diff --git a/dist/js/esse/JSONSchemasInterface.js b/dist/js/esse/JSONSchemasInterface.js index 7bd512b44..3aa94939d 100644 --- a/dist/js/esse/JSONSchemasInterface.js +++ b/dist/js/esse/JSONSchemasInterface.js @@ -66,5 +66,5 @@ class JSONSchemasInterface { return patchedSchema; } } -exports.default = JSONSchemasInterface; JSONSchemasInterface.schemasCache = new Map(); +exports.default = JSONSchemasInterface; diff --git a/dist/js/esse/JSONSchemasInterfaceServer.js b/dist/js/esse/JSONSchemasInterfaceServer.js index 8d492bba3..7051852c7 100644 --- a/dist/js/esse/JSONSchemasInterfaceServer.js +++ b/dist/js/esse/JSONSchemasInterfaceServer.js @@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.readSchemaFolderSync = void 0; +exports.readSchemaFolderSync = readSchemaFolderSync; const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); const filesystem_1 = require("../utils/filesystem"); @@ -19,7 +19,6 @@ function readSchemaFolderSync(folderPath) { }); return schemas; } -exports.readSchemaFolderSync = readSchemaFolderSync; class JSONSchemasInterfaceServer extends JSONSchemasInterface_1.default { static setSchemaFolder(schemaFolder) { if (this.schemaFolder !== schemaFolder) { @@ -42,5 +41,5 @@ class JSONSchemasInterfaceServer extends JSONSchemasInterface_1.default { return super.getSchemaById(schemaId); } } -exports.default = JSONSchemasInterfaceServer; JSONSchemasInterfaceServer.schemaFolder = path_1.default.resolve(__dirname, "./../schema"); +exports.default = JSONSchemasInterfaceServer; diff --git a/dist/js/esse/schemaUtils.js b/dist/js/esse/schemaUtils.js index 61f97e58d..57764b896 100644 --- a/dist/js/esse/schemaUtils.js +++ b/dist/js/esse/schemaUtils.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.mapObjectDeep = void 0; +exports.mapObjectDeep = mapObjectDeep; function mapObjectDeep(object, mapValue) { if (typeof object !== "object" || object === null) { return object; @@ -14,4 +14,3 @@ function mapObjectDeep(object, mapValue) { }); return Object.fromEntries(entries); } -exports.mapObjectDeep = mapObjectDeep; diff --git a/dist/js/esse/server/utils.js b/dist/js/esse/server/utils.js index d348811cc..da3d125be 100644 --- a/dist/js/esse/server/utils.js +++ b/dist/js/esse/server/utils.js @@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.parseIncludeReferenceStatementsByDir = exports.parseIncludeReferenceStatements = void 0; +exports.parseIncludeReferenceStatements = parseIncludeReferenceStatements; +exports.parseIncludeReferenceStatementsByDir = parseIncludeReferenceStatementsByDir; /** * Server-side schema parsing utilities. * @@ -37,7 +38,6 @@ function parseIncludeReferenceStatements(filePath) { } return dereferenced; } -exports.parseIncludeReferenceStatements = parseIncludeReferenceStatements; /** * Resolves `include` and `$ref` statements for all the JSON files inside a given directory. * @param dirPath directory to parse. @@ -65,4 +65,3 @@ function parseIncludeReferenceStatementsByDir(dirPath, wrapInDataAndPath = false }); return wrapInDataAndPath ? schemasWithPath : schemas; } -exports.parseIncludeReferenceStatementsByDir = parseIncludeReferenceStatementsByDir; diff --git a/dist/js/esse/utils.js b/dist/js/esse/utils.js index 18320cabe..ba4df312d 100644 --- a/dist/js/esse/utils.js +++ b/dist/js/esse/utils.js @@ -1,6 +1,7 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.applyPatchTree = exports.applyPatchWithDotNotation = void 0; +exports.applyPatchWithDotNotation = applyPatchWithDotNotation; +exports.applyPatchTree = applyPatchTree; function isPlainObject(value) { return value !== null && typeof value === "object" && !Array.isArray(value); } @@ -28,7 +29,6 @@ function applyPatchWithDotNotation(target, path, patchValue) { } // If existingValue is undefined, we skip; } -exports.applyPatchWithDotNotation = applyPatchWithDotNotation; function applyPatchTree(schema, patchNode, pathPrefix) { Object.entries(patchNode).forEach(([key, value]) => { if (key.includes(".")) { @@ -49,4 +49,3 @@ function applyPatchTree(schema, patchNode, pathPrefix) { } }); } -exports.applyPatchTree = applyPatchTree; diff --git a/dist/js/schema/properties_directory/enum_options.json b/dist/js/schema/properties_directory/enum_options.json index 8e89ef09c..28cc492ea 100644 --- a/dist/js/schema/properties_directory/enum_options.json +++ b/dist/js/schema/properties_directory/enum_options.json @@ -22,6 +22,7 @@ "type": "string", "enum": [ "fermi_energy", + "formation_energy", "homo_energy", "ionization_potential", "lumo_energy", diff --git a/dist/js/schema/property/holder.json b/dist/js/schema/property/holder.json index fe58b18e9..1f555cb76 100644 --- a/dist/js/schema/property/holder.json +++ b/dist/js/schema/property/holder.json @@ -411,6 +411,48 @@ } } }, + { + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Formation energy property schema", + "type": "object", + "required": [ + "name", + "units", + "value" + ], + "properties": { + "name": { + "enum": [ + "formation_energy" + ], + "type": "string" + }, + "units": { + "oneOf": [ + { + "enum": [ + "kcal/mol", + "kJ/mol", + "eV", + "J/mol", + "hartree", + "cm-1", + "Ry", + "eV/atom" + ] + }, + { + "enum": [ + "eV/A^2" + ] + } + ] + }, + "value": { + "type": "number" + } + } + }, { "$schema": "http://json-schema.org/draft-07/schema#", "title": "HOMO energy property schema", diff --git a/dist/js/schemas.json b/dist/js/schemas.json index bb5d08862..4a1666d1d 100644 --- a/dist/js/schemas.json +++ b/dist/js/schemas.json @@ -1 +1 @@ -[{"$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","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","required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"],"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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"}}},"band_extrema":{"type":"object","required":["band_index","kpoint_index","kpoint","energy","projections"],"properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}}},"kpoint":{"type":"object","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"dos_data":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"properties":{"builder_meta":{"type":"object","required":["emmet_version","pymatgen_version","run_id","database_version","build_date","license"],"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"}}},"nsites":{"type":"integer","description":"Number of sites in the structure"},"elements":{"type":"array","description":"List of chemical elements in the material","items":{"type":"string"}},"nelements":{"type":"integer","description":"Number of unique elements"},"composition":{"type":"object","description":"Chemical composition as element: count mapping","additionalProperties":{"type":"number"}},"composition_reduced":{"type":"object","description":"Reduced chemical composition","additionalProperties":{"type":"number"}},"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","required":["crystal_system","symbol","number","point_group","symprec","angle_tolerance","version"],"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"}}},"material_id":{"type":"string","description":"Unique Materials Project identifier"},"deprecated":{"type":"boolean","description":"Whether this material entry is deprecated"},"deprecation_reasons":{"type":["array","null"],"description":"Reasons for deprecation if applicable","items":{"type":"string"}},"last_updated":{"type":"string","format":"date-time","description":"Last update timestamp"},"origins":{"type":"array","items":{"type":"object","required":["name","task_id","last_updated"],"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"}}}},"warnings":{"type":"array","description":"Warning messages","items":{"type":"string"}},"structure":{"type":"object","required":["@module","@class","charge","lattice","properties","sites"],"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","required":["matrix","pbc","a","b","c","alpha","beta","gamma","volume"],"properties":{"matrix":{"type":"array","minItems":3,"maxItems":3,"description":"Lattice matrix","items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"description":"Periodic boundary conditions","items":{"type":"boolean"}},"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"}}},"properties":{"type":"object","description":"Additional structure properties"},"sites":{"type":"array","items":{"type":"object","required":["species","abc","label","xyz"],"properties":{"species":{"type":"array","items":{"type":"object","required":["element","occu"],"properties":{"element":{"type":"string","description":"Chemical element"},"occu":{"type":"number","description":"Occupancy"}}}},"abc":{"type":"array","minItems":3,"maxItems":3,"description":"Fractional coordinates","items":{"type":"number"}},"properties":{"type":"object","properties":{"magmom":{"type":"number","description":"Magnetic moment"}}},"label":{"type":"string","description":"Site label"},"xyz":{"type":"array","minItems":3,"maxItems":3,"description":"Cartesian coordinates","items":{"type":"number"}}}}}}},"property_name":{"type":"string","description":"Name of the property endpoint"},"task_ids":{"type":"array","description":"List of task identifiers","items":{"type":"string"}},"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","required":["material_id","formula","amount"],"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"}}}},{"type":"null"}]},"xas":{"oneOf":[{"type":"array","items":{"type":"object","required":["edge","absorbing_element","spectrum_type"],"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)"}}}},{"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"elemental":{"type":"object","additionalProperties":{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"s":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"p":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"d":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}}}}},"orbital":{"type":"object","properties":{"s":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"p":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"d":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}}}},"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","description":"Types of magnetic species","items":{"type":"string"}},"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","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"],"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"}}},"theoretical":{"type":"boolean","description":"Whether this is a theoretical material"},"database_IDs":{"type":"object","properties":{"icsd":{"type":"array","description":"ICSD database identifiers","items":{"type":"string"}}}}}},{"$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","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"],"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"}}},{"$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","type":"object","additionalProperties":false,"properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","minItems":1,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","minItems":1,"items":{"type":"string"}},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","description":"Additional properties for each of the atoms","items":{"type":"string"}}}},{"$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","type":"object","additionalProperties":true,"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","type":"object","additionalProperties":false,"properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","minItems":1,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","minItems":1,"items":{"type":"string"}},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","description":"Additional properties for each of the atoms","items":{"type":"string"}}}},"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","required":["source"],"properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}}},{"$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","required":["x","y","z"],"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}}}}}},{"$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","required":["X","Mass_X","PseudoPot_X"],"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"}}}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell","$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","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' )"}}}],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},{"$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","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","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'"}}}],"additionalProperties":false,"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","anyOf":[{"properties":{"celldm":{"type":"array","minItems":6,"maxItems":6,"items":{"type":"number"}}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"required":["ibrav","nat","ntyp","ecutwfc"],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}]}},"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","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.","items":{"type":"number"}},"angle2":{"type":"array","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.","items":{"type":"number"}},"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","maxItems":3,"minItems":3,"items":{"type":"number","default":0}},"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."}}},{"$id":"apse/file/applications/espresso/7.2/pw.x","$schema":"http://json-schema.org/draft-07/schema#","title":"pwx main schema","type":"object","additionalProperties":false,"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","anyOf":[{"properties":{"celldm":{"type":"array","minItems":6,"maxItems":6,"items":{"type":"number"}}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"required":["ibrav","nat","ntyp","ecutwfc"],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}]}},"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","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.","items":{"type":"number"}},"angle2":{"type":"array","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.","items":{"type":"number"}},"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","maxItems":3,"minItems":3,"items":{"type":"number","default":0}},"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."}}},"&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","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["X","Mass_X","PseudoPot_X"],"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"}}}}}},"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","required":["x","y","z"],"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}}}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},"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","required":["hostname"],"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"}}}}}},{"$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","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","required":["name","maxPPN","maxNodes","availableNodes","currentNodes"],"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"}}}},"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"}}}}}},{"$id":"compute/queue","$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","required":["name","maxPPN","maxNodes","availableNodes","currentNodes"],"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"}}},{"$id":"context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"context provider schema","type":"object","required":["name"],"additionalProperties":true,"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"}}},{"$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","required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"],"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."}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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","required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"],"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"}}},{"$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","required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"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"}}},{"$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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},{"$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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},{"$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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},{"$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","required":["point","steps","coordinates"],"properties":{"point":{"type":"string"},"steps":{"type":"number"},"coordinates":{"type":"array","items":{"type":"number","minItems":3,"maxItems":3}}}}},{"$id":"core/abstract/2d-data","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","required":["xDataArray","yDataSeries"],"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"}}}}},{"$id":"core/abstract/2d-plot","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","required":["xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"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"}}}}},{"$id":"core/abstract/3d-grid","$schema":"http://json-schema.org/draft-07/schema#","title":"3 dimensional grid schema","type":"object","required":["dimensions","shifts"],"properties":{"dimensions":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"shifts":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/abstract/coordinate-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/abstract/coordinate-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$id":"core/abstract/matrix-3x3","$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},{"$id":"core/abstract/vector-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/abstract/vector-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/primitive/array-of-3-booleans","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}},{"$id":"core/primitive/array-of-3-integers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},{"$id":"core/primitive/array-of-3-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},{"$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","definitions":{"flowchart-id":{"required":["flowchartId"],"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"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}},{"$id":"core/primitive/linked-list/named-node","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"}}},{"$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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"},"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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId"],"properties":{"type":{"type":"string"},"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","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","definitions":{"flowchart-id":{"required":["flowchartId"],"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"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"},"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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId"],"properties":{"type":{"type":"string"},"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","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","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","required":["id","value"],"properties":{"value":{"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$id":"core/primitive/scalar","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","required":["value"],"properties":{"value":{"type":"number"}}},{"$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","required":["name","slug"],"properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}}},{"$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","required":["value"],"properties":{"value":{"type":"string"}}},{"$id":"core/reference/exabyte","$schema":"http://json-schema.org/draft-07/schema#","type":"object","required":["jobId","unitId"],"properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}}},{"$id":"core/reference/experiment/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","required":["name"],"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"}}},{"$id":"core/reference/experiment/location","$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},{"$id":"core/reference/experiment","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","required":["conditions","authors","title","method","timestamp"],"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}}},{"$id":"core/reference/literature/name","$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}},{"$id":"core/reference/literature/pages","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},{"$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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},{"$id":"core/reference/modeling/exabyte","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","required":["title","_id","owner"],"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}}},{"$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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}]},{"$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","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]$"},"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","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."},"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","description":"array of objects containing integer id each","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","required":["id"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","required":["value"],"properties":{"value":{"type":"number"}}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"core/reusable/atomic-string","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"string","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$id":"core/reusable/atomic-vector","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"core/reusable/band-gap","$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}},{"$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","required":["shape"],"properties":{"shape":{"$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/box","$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/reusable/coordinate-conditions/cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]},{"$id":"core/reusable/coordinate-conditions/plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/reusable/coordinate-conditions/sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$id":"core/reusable/coordinate-conditions/triangular-prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$id":"core/reusable/dielectric-tensor-component","$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$id":"core/reusable/energy","$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","required":["name","units","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"]}]},"value":{"type":"number"}}},{"$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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}},{"$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/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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","required":["accuracy_level","value"],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}},{"$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","required":["c","h","e","G","me","eps0","mu0"],"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}}},{"$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","required":["name","value"],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","required":["name","value"],"properties":{"name":{"enum":["electronegativity"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"value":{"type":"number"}}}]}}}},{"$id":"in-memory-entity/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"in-memory-entity/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Defaultable in-memory entity schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"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","type":"object","required":["name"],"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":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"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.","required":["key","name","severity","message"],"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."}}}}}},{"$id":"in-memory-entity/named","$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"}}},{"$id":"in-memory-entity/named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"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","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["_project","compute","name","status"],"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"job/compute","$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},{"$id":"job/compute-property","$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","required":["compute"],"properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"job","$schema":"http://json-schema.org/draft-07/schema#","title":"job schema","type":"object","required":["_project","compute","name","status","workflow"],"properties":{"workflow":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"material/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"material 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.","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."},"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'"},"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."}}},{"$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","required":["basis","lattice"],"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}}}},{"$id":"material/metadata/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","additionalProperties":true,"properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}}},{"$id":"material/metadata/bulk-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","additionalProperties":true,"properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}}},{"$id":"material/metadata/slab-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","additionalProperties":true,"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"}}},{"$id":"material/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","required":["metadata"],"properties":{"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$id":"material","$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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.","type":"object","required":["stack_components","direction"],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["stack_components","direction"],"type":"object","properties":{"stack_components":{"maxItems":2,"type":"array","minItems":2,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"x","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"actual_angle":{"type":"number","description":"The actual angle between the two phases","minimum":0,"maximum":360},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","required":["stack_components","direction"],"properties":{"direction":{"default":"z","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"stack_components":{"type":"array","minItems":2,"maxItems":3,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}}]},"merge_method":{"default":"REPLACE","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["cut_direction","direction","stack_components"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}}]},"merge_method":{"default":"REPLACE","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"cut_direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["chemical_element"],"properties":{"chemical_element":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}}}]},"merge_method":{"default":"REPLACE","$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/pristine-structures/three-dimensional/ideal-crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Ideal Crystal Schema","description":"An ideal, perfect crystal structure","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"y","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"x","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"y","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["bond_length","merge_components","merge_method","passivant"],"properties":{"merge_components":{"type":"array","minItems":2,"items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]}},"merge_method":{"default":"ADD","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]},"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","required":["chemical_element"],"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"]}}},"bond_length":{"type":"number","default":1,"description":"The bond length for the passivating atoms"}}},{"$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","minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}}},{"$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","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},{"$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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},{"$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","required":["crystal","coordinate"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}},{"$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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["center_coordinate","shape"],"properties":{"center_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}},{"$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","required":["chemical_element"],"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"]}}},{"$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","required":["chemical_element"],"properties":{"chemical_element":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}}},{"$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","required":["crystal","miller_indices_2d"],"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","minItems":3,"maxItems":3,"default":[1,1,1],"items":{"type":"integer","minimum":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","required":["crystal","strain_matrix"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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","required":["crystal","strain_percentage"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"strain_percentage":{"type":"number","description":"Percentage of uniform strain to apply to the crystal structure"}}},{"$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","required":["crystal","matrix"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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","required":["crystal","miller_indices","terminations"],"properties":{"terminations":{"type":"array","minItems":1,"description":"All possible terminations for this orientation.","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"}}}},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices","terminations"],"properties":{"terminations":{"type":"array","minItems":1,"description":"All possible terminations for this orientation.","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"}}}},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices"],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"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"]}}},{"$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","required":["stack_components","direction"],"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}}}}},{"$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","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$id":"method/categorized-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","required":["name","units"],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"method/method-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"MethodParameters","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","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"method","$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["fd"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh/nstruct","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category nstruct schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["nstruct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh/struct/cartesian","$schema":"http://json-schema.org/draft-07/schema#","title":"Cartesian grid schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cartesian"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["struct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["struct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh","$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr","$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["basisExp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["lin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol/poly","$schema":"http://json-schema.org/draft-07/schema#","title":"Polynomial interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["poly"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol/spline","$schema":"http://json-schema.org/draft-07/schema#","title":"Spline interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["spline"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol","$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["volume"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["analytic"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/mathematical/intgr/analytic","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["analytic"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"tier3":{"enum":["order1"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"tier3":{"enum":["order2"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["gauss"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr/numquad/newcot","$schema":"http://json-schema.org/draft-07/schema#","title":"Newton-Cotes quadrature rules schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["newcot"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr/numquad","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"type":{"enum":["fourier"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["transf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"methods-category/mathematical/intgr/transf","$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","properties":{"tier2":{"enum":["transf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr","$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/dcomp","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix decomposition methods schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["dcomp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/diag/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["davidson"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["lintra"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/matf","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix function methods schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["matf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["bracket"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["local"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["order1"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["order2"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/diff/ordern/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["direct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["pop"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["stoch"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/ndiff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/root/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracketing method for finding roots category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["bracket"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["iterative"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/root","$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt","$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["linear","kernel_ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["least_squares","ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["dunning"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["pople"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["pople","dunning","other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["psp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["us","nc","nc-fr","paw","coulomb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["pw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"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","properties":{"type":{"enum":["smearing"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["tetrahedron"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["linear","optimized","bloechl"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/physical/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-directory/legacy/localorbital","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method localorbital","type":"object","required":["type","subtype"],"properties":{"type":{"const":"localorbital","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"const":"pople","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/pseudopotential","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method pseudopotential","type":"object","required":["type","subtype"],"properties":{"type":{"const":"pseudopotential","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"enum":["paw","nc","us","any"],"default":"us","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method regression","type":"object","required":["data","precision","subtype","type"],"properties":{"type":{"enum":["linear","kernel_ridge"],"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"enum":["least_squares","ridge"],"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","description":"Object showing the actual possible precision based on theory and implementation","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","description":"additional data specific to method, eg. array of pseudopotentials","additionalProperties":true,"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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}},"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method unknown","type":"object","required":["type","subtype"],"properties":{"type":{"const":"unknown","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"const":"unknown","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"methods-directory/mathematical/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method davidson schema","description":"Davidson diagonalization method","type":"object","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["davidson"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}}}},{"$id":"methods-directory/mathematical/regression/dataset","$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}},{"$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","required":["xFit","dualCoefficients","perFeature"],"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","required":["name"],"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"}}}}}},{"$id":"methods-directory/mathematical/regression/linear/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","required":["intercept","perFeature"],"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","required":["name"],"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"}}}}}},{"$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","required":["name"],"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"}}},{"$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","required":["trainingError"],"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"}}}}}},{"$id":"methods-directory/mathematical/regression/precision-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}},{"$id":"methods-directory/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method regression","type":"object","required":["categories","data","name","precision"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["linear","kernel_ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["least_squares","ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"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"}]}}},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","description":"Object showing the actual possible precision based on theory and implementation","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}}}}},"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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-dunning":{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["dunning"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-other":{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-pople":{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["pople"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},"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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["psp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["us","nc","nc-fr","paw","coulomb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["pw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"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","properties":{"type":{"enum":["smearing"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"methods-directory/physical/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method tetrahedron","type":"object","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["tetrahedron"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["linear","optimized","bloechl"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"model/categorized-model","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized model","type":"object","required":["categories","method","name","parameters"],"properties":{"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","required":["name","units"],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","additionalProperties":true,"properties":{"functional":{"enum":["pbe","pbesol"]}}},{"$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","additionalProperties":true,"properties":{"functional":{"enum":["pz"]}}},{"$id":"model/mixins/dft/mgga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","additionalProperties":true,"properties":{"functional":{"enum":["scan"]}}},{"$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","additionalProperties":true,"properties":{"spinOrbitCoupling":{"type":"boolean"}}},{"$id":"model/mixins/spin-polarization","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","additionalProperties":true,"properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}}},{"$id":"model/model-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"ModelParameters","type":"object","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"]}}}],"additionalProperties":true,"properties":{"hubbardType":{"enum":["u"]},"spinPolarization":{"enum":["collinear","non-collinear"]},"spinOrbitCoupling":{"type":"boolean"},"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$id":"model/model-without-method","$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","required":["categories","name","parameters"],"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"model","$schema":"http://json-schema.org/draft-07/schema#","title":"base model","type":"object","required":["type","subtype","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["gw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["g0w0","evgw0","evgw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/abin","$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["double-hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["gga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["lda"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["mgga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft","$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["semp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb","$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["re"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/st/det/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/st/det","$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-directory/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model double hybrid functional","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["double-hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","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}],"description":"Model parameters defined in-place or via model mixins","properties":{"functional":{"enum":["b2plyp"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"model generalized gradient approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["gga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["pbe","pbesol"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"model gw approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["gw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["g0w0","evgw0","evgw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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","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}],"description":"Model parameters defined in-place or via model mixins","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"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model hybrid functional","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","properties":{"functional":{"enum":["hse06","b3lyp"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"model local density approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["lda"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["pz"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/dft-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/dft-lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","required":["type","subtype","method"],"properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","required":["type","subtype","method"],"properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"model meta generalized gradient approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["mgga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["scan"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/re","$schema":"http://json-schema.org/draft-07/schema#","title":"model regression","description":"machine learning model type/subtype schema","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["re"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"project","$schema":"http://json-schema.org/draft-07/schema#","title":"project schema","type":"object","required":["name"],"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"}}},{"$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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"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","required":["name","value"],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"value":{"type":"number"}}},{"$id":"properties-directory/elemental/electronegativity","$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","required":["name","value"],"properties":{"name":{"enum":["electronegativity"]},"value":{"type":"number"}}},{"$id":"properties-directory/elemental/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"value":{"type":"number"}}},{"$id":"properties-directory/enum-options","definitions":{"ExternalSource":{"type":"string","enum":["ICSD","MaterialsProject","MaterialsProjectLegacy"]},"PropertyType":{"type":"string","enum":["scalar","non-scalar","tensor","object"]},"ScalarPropertyEnum":{"type":"string","enum":["fermi_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_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"]},"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","required":["name","host","port","token"],"properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}}},{"$id":"properties-directory/non-scalar/average-potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"],"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["average_potential_profile"]},"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"}}}}},{"$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","required":["name","values"],"properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}}},{"$id":"properties-directory/non-scalar/band-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","required":["name","spin","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["kpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}},"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"}}}}},{"$id":"properties-directory/non-scalar/charge-density-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["charge density"],"description":"label of an axis object","type":"string"},"units":{"enum":["e/A"],"description":"units for an axis","type":"string"}}},"name":{"enum":["charge_density_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/density-of-states","$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","required":["legend","name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["density of states"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/unitcell"],"description":"units for an axis","type":"string"}}},"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]}}}},"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"}}}}},{"$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","required":["name","values"],"properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}}}},{"$id":"properties-directory/non-scalar/file-content","$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","required":["name","filetype","objectData"],"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"}}},"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"}}},{"$id":"properties-directory/non-scalar/final-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","required":["name","isRelaxed","materialId"],"properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}}},{"$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","required":["name","values","units"],"properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","atomicSpecies","orbitalName","value"],"$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.","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]$"},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v_nn"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$id":"properties-directory/non-scalar/is-relaxed","$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","required":["name","value","materialId"],"properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}}},{"$id":"properties-directory/non-scalar/phonon-dispersions","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["qpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dispersions"]},"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"}}}}},{"$id":"properties-directory/non-scalar/phonon-dos","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Phonon DOS"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/cm-1","states/THz","states/meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dos"]},"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"}}}}},{"$id":"properties-directory/non-scalar/potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["potential_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/reaction-energy-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["reaction coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["reaction_energy_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/stress-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","required":["name","value","units"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}}},{"$id":"properties-directory/non-scalar/total-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","required":["name"],"properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["temperature_entropy"]},"value":{"type":"number"}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["harris_foulkes"]},"value":{"type":"number"}}},"smearing":{"description":"smearing energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["smearing"]},"value":{"type":"number"}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["one_electron"]},"value":{"type":"number"}}},"hartree":{"description":"energy due to coulomb potential","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree"]},"value":{"type":"number"}}},"exchange":{"description":"exchange energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange"]},"value":{"type":"number"}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange_correlation"]},"value":{"type":"number"}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["ewald"]},"value":{"type":"number"}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["alphaZ"]},"value":{"type":"number"}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["atomic_energy"]},"value":{"type":"number"}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["eigenvalues"]},"value":{"type":"number"}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]},"value":{"type":"number"}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]},"value":{"type":"number"}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree_fock"]},"value":{"type":"number"}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},{"$id":"properties-directory/non-scalar/vibrational-spectrum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vibrational spectrum property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency","wavenumber"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Intensity","Absorbance","Absorption coefficient"],"description":"label of an axis object","type":"string"},"units":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."],"description":"units for an axis","type":"string"}}},"name":{"enum":["vibrational_spectrum"]},"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"}}}}},{"$id":"properties-directory/non-scalar/wavefunction-amplitude","$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["amplitude"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"name":{"enum":["wavefunction_amplitude"]},"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"}}}}},{"$id":"properties-directory/non-scalar/workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"properties":{"name":{"enum":["workflow:pyml_predict"],"description":"entity name","type":"string"},"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$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","required":["values","units"],"properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$id":"properties-directory/scalar/electron-affinity","$schema":"http://json-schema.org/draft-07/schema#","title":"Electron affinity property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["electron_affinity"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/fermi-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["fermi_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["formation_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/homo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["homo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/lumo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["lumo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/reaction-energy-barrier","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["reaction_energy_barrier"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/surface-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["surface_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/total-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/total-force","$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/valence-band-offset","$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["valence_band_offset"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/zero-point-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["zero_point_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","values"],"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","required":["name","values"],"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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"properties-directory/structural/basis/bonds","$schema":"http://json-schema.org/draft-07/schema#","title":"bonds schema","type":"array","uniqueItems":true,"items":{"type":"object","properties":{"atomPair":{"description":"indices of the two connected atoms","type":"array","minItems":2,"maxItems":2,"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}}},"bondType":{"type":"string","enum":["single","double","triple","quadruple","aromatic","tautomeric","dative","other"]}}}},{"$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","required":["name","type","offset"],"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"}}},{"$id":"properties-directory/structural/basis/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","enum":["crystal","cartesian"],"default":"crystal"},{"$id":"properties-directory/structural/basis","$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$id":"properties-directory/structural/density","$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","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","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$id":"properties-directory/structural/inchi-key","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}},{"$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","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","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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}},{"$id":"properties-directory/structural/lattice/vectors/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},{"$id":"properties-directory/structural/lattice","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},{"$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","required":["name","values","units"],"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"enum":["uB"]}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}}},"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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$id":"properties-directory/structural/patterns/functional-group","$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","required":["name"],"properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}}},{"$id":"properties-directory/structural/patterns/ring","$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","required":["name"],"properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"isAromatic":{"type":"boolean"}}},{"$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","required":["name"],"properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$id":"properties-directory/structural/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$id":"properties-directory/workflow/convergence/electronic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","required":["data","name","units"],"properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},{"$id":"properties-directory/workflow/convergence/ionic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","required":["data","name","units"],"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","required":["energy"],"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"}}}}}}}}},{"$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","required":["tolerance","units","data"],"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","required":["value","grid"],"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"}}}}}},{"$id":"property/holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Property holder schema","type":"object","required":["data","source","repetition","exabyteId"],"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","required":["name","units","value"],"properties":{"name":{"enum":["valence_band_offset"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["zero_point_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["reaction_energy_barrier"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["surface_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["fermi_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["homo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["lumo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["name","spin","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["kpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["qpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dispersions"]},"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"}}}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["temperature_entropy"]},"value":{"type":"number"}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["harris_foulkes"]},"value":{"type":"number"}}},"smearing":{"description":"smearing energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["smearing"]},"value":{"type":"number"}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["one_electron"]},"value":{"type":"number"}}},"hartree":{"description":"energy due to coulomb potential","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree"]},"value":{"type":"number"}}},"exchange":{"description":"exchange energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange"]},"value":{"type":"number"}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange_correlation"]},"value":{"type":"number"}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["ewald"]},"value":{"type":"number"}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["alphaZ"]},"value":{"type":"number"}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["atomic_energy"]},"value":{"type":"number"}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["eigenvalues"]},"value":{"type":"number"}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]},"value":{"type":"number"}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]},"value":{"type":"number"}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree_fock"]},"value":{"type":"number"}}},"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":"Phonon density of states property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Phonon DOS"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/cm-1","states/THz","states/meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dos"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["potential_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["amplitude"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"name":{"enum":["wavefunction_amplitude"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["reaction coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["reaction_energy_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","required":["legend","name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["density of states"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/unitcell"],"description":"units for an axis","type":"string"}}},"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]}}}},"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"}}}}},{"$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","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","required":["name","filetype","objectData"],"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"}}},"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"}}},{"$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","required":["id","atomicSpecies","orbitalName","value"],"$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.","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]$"},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}},"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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v_nn"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"],"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["average_potential_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["charge density"],"description":"label of an axis object","type":"string"},"units":{"enum":["e/A"],"description":"units for an axis","type":"string"}}},"name":{"enum":["charge_density_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"properties":{"name":{"enum":["workflow:pyml_predict"],"description":"entity name","type":"string"},"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["energy"],"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":["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","required":["type","info"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","required":["jobId","unitId"],"properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}}}}},"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"},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/meta-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta property holder schema","type":"object","required":["data","source"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]}]},"source":{"type":"object","required":["type"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/proto-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Proto property holder schema","type":"object","required":["data","source"],"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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}},"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","required":["type","info"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object","properties":{"materialId":{"type":"string"}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/source","$schema":"http://json-schema.org/draft-07/schema#","title":"Property source schema","type":"object","required":["info"],"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}},"required":["conditions","authors","title","method","timestamp"]}]}}},{"$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","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/application-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","required":["shortName","summary","version","build"],"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/application-with-build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application with build config schema","type":"object","required":["build","name","shortName","summary","version"],"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/executable","$schema":"http://json-schema.org/draft-07/schema#","title":"executable schema","type":"object","required":["applicationName","applicationVersion","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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"}}},{"$id":"software/executable-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","required":["applicationName","applicationVersion"],"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"}}},{"$id":"software/flavor","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},{"$id":"software/flavor-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","required":["input","executableName","applicationName","applicationVersion"],"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},{"$id":"software/template","$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},{"$id":"software/template-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","required":["contextProviders","content","executableName","applicationName","applicationVersion"],"properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},{"$id":"software-directory/modeling/deepmd","$schema":"http://json-schema.org/draft-07/schema#","title":"DeePMD app schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["deepmd"],"description":"entity name","type":"string"},"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"],"description":"Application's short description.","type":"string"},"version":{"enum":["2.0.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["dp","lmp","python"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/modeling/espresso/arguments","$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},{"$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","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["lammps"],"description":"entity name","type":"string"},"summary":{"enum":["LAMMPS"],"description":"Application's short description.","type":"string"},"version":{"enum":["2025.07.22.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"enum":["GNU","Intel","CUDA"],"description":"Application build. e.g. VTST","type":"string"},"exec":{"enum":["lmp"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/modeling/nwchem","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["NWChem"],"description":"entity name","type":"string"},"summary":{"enum":["NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations"],"description":"Application's short description.","type":"string"},"version":{"enum":["6.6","7.0.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["nwchem"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$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","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","title":"execution unit input schema","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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"]}],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"software-directory/modeling/vasp","$schema":"http://json-schema.org/draft-07/schema#","title":"vienna ab-inito simulation package","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["vasp"],"description":"entity name","type":"string"},"summary":{"enum":["vienna ab-initio simulation package"],"description":"Application's short description.","type":"string"},"flavor":{"enum":["vasp","vasp_nscf","vasp_bands"]},"version":{"enum":["5.3.5"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["vasp"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/jupyter-lab","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter Lab Application Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["jupyterLab"],"description":"entity name","type":"string"},"flavor":{"enum":["notebook"]},"summary":{"enum":["Jupyter Lab"],"description":"Application's short description.","type":"string"},"version":{"enum":["0.33.12"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["jupyter"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/python","$schema":"http://json-schema.org/draft-07/schema#","title":"Python Programing Language Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["python"],"description":"entity name","type":"string"},"flavor":{"enum":["python2","python3"]},"summary":{"enum":["Python Script"],"description":"Application's short description.","type":"string"},"version":{"enum":["2.7.5","3.6.1"],"description":"Application version. e.g. 5.3.5","type":"string"},"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/shell","$schema":"http://json-schema.org/draft-07/schema#","title":"Shell Scripting Language Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["shell"],"description":"entity name","type":"string"},"flavor":{"enum":["sh","bash","zsh","csh"]},"summary":{"enum":["Shell Script"],"description":"Application's short description.","type":"string"},"version":{"enum":["4.2.46"],"description":"Application version. e.g. 5.3.5","type":"string"},"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for scripting-based applications","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","title":"execution unit input schema","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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"]}],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"system/-material","$schema":"http://json-schema.org/draft-07/schema#","title":"Material entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Material class","type":"string","enum":["Material"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/-parent-job","$schema":"http://json-schema.org/draft-07/schema#","title":"Parent job entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Job class","type":"string","enum":["Job"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/-project","$schema":"http://json-schema.org/draft-07/schema#","title":"Project entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Project class","type":"string","enum":["Project"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/bankable","$schema":"http://json-schema.org/draft-07/schema#","title":"bankable schema","type":"object","required":["exabyteId","hash"],"properties":{"exabyteId":{"description":"Identity of the corresponding bank entity","type":"string"},"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}}},{"$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.","required":["key","name","severity","message"],"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."}}},{"$id":"system/creator","$schema":"http://json-schema.org/draft-07/schema#","title":"Creator entity reference schema","type":"object","required":["_id","cls"],"properties":{"cls":{"description":"Creator class","type":"string","enum":["User"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/creator-account","$schema":"http://json-schema.org/draft-07/schema#","title":"creator account schema","type":"object","required":["creatorAccount"],"properties":{"creatorAccount":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}}},{"$id":"system/database-source","$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","source","origin"],"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"}}},{"$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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$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","required":["filename","text","hash"],"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"}}},{"$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.","required":["key","name","severity","message"],"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."}}}}}},{"$id":"system/history","$schema":"http://json-schema.org/draft-07/schema#","title":"history schema","type":"object","properties":{"history":{"type":"array","items":{"type":"object","required":["id","revision"],"properties":{"id":{"type":"string"},"revision":{"type":"number"}}}}}},{"$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","required":["type","action","payload"],"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"}}},{"$id":"system/in-set","$schema":"http://json-schema.org/draft-07/schema#","title":"System in-set schema","type":"object","required":["inSet"],"properties":{"inSet":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"},"type":{"type":"string"},"index":{"type":"number"}}}}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"_materialsSet":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["header","payload"],"properties":{"header":{"type":"object","required":["entity","version","timestamp"],"properties":{"entity":{"type":"object","required":["_id","name"],"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"]}}},"version":{"description":"Rupy-Webapp communication schema version.","type":"string"},"timestamp":{"description":"Timestamp of the message.","type":"number"}}},"payload":{"description":"Actual payload of the message.","type":"object"}}},{"$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","required":["name"],"properties":{"name":{"description":"entity name","type":"string"}}},{"$id":"system/owner","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity owner reference schema","type":"object","required":["_id","cls"],"properties":{"cls":{"description":"Entity owner class","type":"string","enum":["Account"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$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","type":"object","required":["name"],"properties":{"name":{"description":"entity name","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"}}},{"$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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}},{"$id":"system/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","required":["preProcessors","postProcessors","monitors","results"],"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}}}},{"$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","properties":{"status":{"type":"string"},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}}}},{"$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","required":["properties","units","subworkflows"],"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}}}},{"$id":"workflow/base-flow","$schema":"http://json-schema.org/draft-07/schema#","title":"BaseFlow","type":"object","required":["name","units"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"workflow/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}},{"$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","required":["model","properties","application","units"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}},{"$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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}},{"$id":"workflow/unit/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$id":"workflow/unit/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}},{"$id":"workflow/unit/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string"},"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"}}},{"$id":"workflow/unit/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$id":"workflow/unit/context/-base","$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","required":["name","isEdited","data","extraData"],"properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/-extra-data-material-hash","$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},{"$id":"workflow/unit/context/item/boundaryConditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/collinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/cutoffs","$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/dynamics","$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/grid","$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/hubbard-j","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/hubbard-legacy","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/input","$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/mlSettings","$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/mlTrainTestSplit","$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/neb","$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/nonCollinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}},{"$id":"workflow/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}},{"$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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}},{"$id":"workflow/unit/input/-inputItemScope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}},{"$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","required":["type","endpoint","endpoint_options"],"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"}}},{"$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","required":["type","collection","draft"],"properties":{"type":{"const":"db_collection"},"collection":{"description":"db collection name","type":"string"},"draft":{"description":"whether the result should be saved as draft","type":"boolean"}}},{"$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","required":["type","ids"],"properties":{"type":{"const":"db_ids"},"ids":{"description":"IDs of item to retrieve from db","type":"array","items":{"type":"string"}}}},{"$id":"workflow/unit/io/object-storage","$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","required":["type","objectData"],"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"},"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":"workflow/unit/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$id":"workflow/unit/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$id":"workflow/unit/mixins/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","required":["name","statement"],"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"}}},{"$id":"workflow/unit/mixins/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","required":["name","operand","value"],"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","required":["scope","name"],"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"}}}},"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"}]}}},{"$id":"workflow/unit/mixins/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","required":["type","flowchartId"],"properties":{"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}}},{"$id":"workflow/unit/mixins/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","required":["input","statement","then","else","maxOccurrences"],"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","required":["scope","name"],"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"}}}},"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"}}},{"$id":"workflow/unit/mixins/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","required":["type","input","application","executable","flavor","context"],"properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"workflow/unit/mixins/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","required":["subtype","source","input"],"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$id":"workflow/unit/mixins/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","required":["input","workflowId"],"properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$id":"workflow/unit/mixins/processing","$schema":"http://json-schema.org/draft-07/schema#","title":"processing unit mixin schema","type":"object","required":["operation","operationType","inputData"],"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)"}}},{"$id":"workflow/unit/mixins/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","required":["mapFlowchartId","input"],"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","required":["operation","arguments"],"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"}}}}}}},{"$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","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$id":"workflow/unit/runtime/-runtime-item-full-object","$schema":"http://json-schema.org/draft-07/schema#","title":"full result schema","type":"object","required":["name"],"properties":{"name":{"description":"The name of this item. e.g. 'my_custom_property. '","type":"string"}}},{"$id":"workflow/unit/runtime/-runtime-item-name-object","$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}},{"$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","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}},{"$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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}}] \ No newline at end of file +[{"$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","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","required":["task_id","band_gap","cbm","vbm","efermi","is_gap_direct","is_metal","magnetic_ordering","equivalent_labels","nbands","direct_gap"],"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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"}}},"band_extrema":{"type":"object","required":["band_index","kpoint_index","kpoint","energy","projections"],"properties":{"band_index":{"type":"object","additionalProperties":{"type":"array","items":{"type":"number"}}},"kpoint_index":{"type":"array","items":{"type":"number"}},"kpoint":{"type":"object","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"energy":{"type":"number"},"projections":{"type":"object","additionalProperties":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}}},"kpoint":{"type":"object","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"dos_data":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"properties":{"builder_meta":{"type":"object","required":["emmet_version","pymatgen_version","run_id","database_version","build_date","license"],"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"}}},"nsites":{"type":"integer","description":"Number of sites in the structure"},"elements":{"type":"array","description":"List of chemical elements in the material","items":{"type":"string"}},"nelements":{"type":"integer","description":"Number of unique elements"},"composition":{"type":"object","description":"Chemical composition as element: count mapping","additionalProperties":{"type":"number"}},"composition_reduced":{"type":"object","description":"Reduced chemical composition","additionalProperties":{"type":"number"}},"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","required":["crystal_system","symbol","number","point_group","symprec","angle_tolerance","version"],"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"}}},"material_id":{"type":"string","description":"Unique Materials Project identifier"},"deprecated":{"type":"boolean","description":"Whether this material entry is deprecated"},"deprecation_reasons":{"type":["array","null"],"description":"Reasons for deprecation if applicable","items":{"type":"string"}},"last_updated":{"type":"string","format":"date-time","description":"Last update timestamp"},"origins":{"type":"array","items":{"type":"object","required":["name","task_id","last_updated"],"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"}}}},"warnings":{"type":"array","description":"Warning messages","items":{"type":"string"}},"structure":{"type":"object","required":["@module","@class","charge","lattice","properties","sites"],"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","required":["matrix","pbc","a","b","c","alpha","beta","gamma","volume"],"properties":{"matrix":{"type":"array","minItems":3,"maxItems":3,"description":"Lattice matrix","items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"description":"Periodic boundary conditions","items":{"type":"boolean"}},"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"}}},"properties":{"type":"object","description":"Additional structure properties"},"sites":{"type":"array","items":{"type":"object","required":["species","abc","label","xyz"],"properties":{"species":{"type":"array","items":{"type":"object","required":["element","occu"],"properties":{"element":{"type":"string","description":"Chemical element"},"occu":{"type":"number","description":"Occupancy"}}}},"abc":{"type":"array","minItems":3,"maxItems":3,"description":"Fractional coordinates","items":{"type":"number"}},"properties":{"type":"object","properties":{"magmom":{"type":"number","description":"Magnetic moment"}}},"label":{"type":"string","description":"Site label"},"xyz":{"type":"array","minItems":3,"maxItems":3,"description":"Cartesian coordinates","items":{"type":"number"}}}}}}},"property_name":{"type":"string","description":"Name of the property endpoint"},"task_ids":{"type":"array","description":"List of task identifiers","items":{"type":"string"}},"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","required":["material_id","formula","amount"],"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"}}}},{"type":"null"}]},"xas":{"oneOf":[{"type":"array","items":{"type":"object","required":["edge","absorbing_element","spectrum_type"],"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)"}}}},{"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["lattice","fcoords","ccoords","label","@module","@class"],"properties":{"lattice":{"type":"object","required":["@module","@class","matrix","pbc"],"properties":{"@module":{"type":"string"},"@class":{"type":"string"},"matrix":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"pbc":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}}}},"fcoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"ccoords":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"label":{"type":["string","null"]},"@module":{"type":"string"},"@class":{"type":"string"}}},"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","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"elemental":{"type":"object","additionalProperties":{"type":"object","properties":{"total":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"s":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"p":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"d":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}}}}},"orbital":{"type":"object","properties":{"s":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"p":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}},"d":{"type":"object","additionalProperties":{"type":"object","required":["task_id","band_gap","cbm","vbm","efermi","spin_polarization"],"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"]}}}}}},"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","description":"Types of magnetic species","items":{"type":"string"}},"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","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"],"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"}}},"theoretical":{"type":"boolean","description":"Whether this is a theoretical material"},"database_IDs":{"type":"object","properties":{"icsd":{"type":"array","description":"ICSD database identifiers","items":{"type":"string"}}}}}},{"$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","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"],"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"}}},{"$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","type":"object","additionalProperties":false,"properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","minItems":1,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","minItems":1,"items":{"type":"string"}},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","description":"Additional properties for each of the atoms","items":{"type":"string"}}}},{"$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","type":"object","additionalProperties":true,"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","type":"object","additionalProperties":false,"properties":{"lattice_mat":{"type":"array","description":"Crystal lattice vectors as a 3x3 matrix, in Angstroms","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"coords":{"type":"array","description":"Atomic coordinates for each atom in the unit cell","minItems":1,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"elements":{"type":"array","description":"Atomic elements for each atom in the unit cell in the same order as `coords`","minItems":1,"items":{"type":"string"}},"abc":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"angles":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"cartesian":{"type":"boolean","description":"True if the coordinates are in Cartesian space, false if in fractional space"},"props":{"type":"array","description":"Additional properties for each of the atoms","items":{"type":"string"}}}},"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","required":["source"],"properties":{"source":{"type":"string","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]}}},{"$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","required":["x","y","z"],"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}}}}}},{"$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","required":["X","Mass_X","PseudoPot_X"],"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"}}}}}},{"$id":"apse/file/applications/espresso/7.2/pw.x/cell","$schema":"http://json-schema.org/draft-07/schema#","title":"cell schema","type":"object","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' )"}}}],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},{"$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","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","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'"}}}],"additionalProperties":false,"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","anyOf":[{"properties":{"celldm":{"type":"array","minItems":6,"maxItems":6,"items":{"type":"number"}}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"required":["ibrav","nat","ntyp","ecutwfc"],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}]}},"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","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.","items":{"type":"number"}},"angle2":{"type":"array","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.","items":{"type":"number"}},"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","maxItems":3,"minItems":3,"items":{"type":"number","default":0}},"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."}}},{"$id":"apse/file/applications/espresso/7.2/pw.x","$schema":"http://json-schema.org/draft-07/schema#","title":"pwx main schema","type":"object","additionalProperties":false,"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","anyOf":[{"properties":{"celldm":{"type":"array","minItems":6,"maxItems":6,"items":{"type":"number"}}}},{"properties":{"A":{"type":"number"},"B":{"type":"number"},"C":{"type":"number"},"cosAB":{"type":"number"},"cosAC":{"type":"number"},"cosBC":{"type":"number"}}}],"required":["ibrav","nat","ntyp","ecutwfc"],"additionalProperties":false,"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","minItems":3,"maxItems":3,"items":[{"type":"integer","minimum":1},{"type":"integer","minimum":1,"maximum":3},{"type":"number"}]}},"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","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.","items":{"type":"number"}},"angle2":{"type":"array","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.","items":{"type":"number"}},"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","maxItems":3,"minItems":3,"items":{"type":"number","default":0}},"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."}}},"&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","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["X","Mass_X","PseudoPot_X"],"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"}}}}}},"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","required":["x","y","z"],"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}}}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},"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","required":["hostname"],"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"}}}}}},{"$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","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","required":["name","maxPPN","maxNodes","availableNodes","currentNodes"],"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"}}}},"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"}}}}}},{"$id":"compute/queue","$schema":"http://json-schema.org/draft-07/schema#","title":"Queue schema","type":"object","required":["name","maxPPN","maxNodes","availableNodes","currentNodes"],"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"}}},{"$id":"context-provider","$schema":"http://json-schema.org/draft-07/schema#","title":"context provider schema","type":"object","required":["name"],"additionalProperties":true,"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"}}},{"$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","required":["CHARGE","MULT","BASIS","NAT","NTYP","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","ATOMIC_SPECIES","FUNCTIONAL","CARTESIAN","contextProviderName"],"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."}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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","required":["POSCAR","POSCAR_WITH_CONSTRAINTS","contextProviderName"],"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"}}},{"$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","required":["FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"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"}}},{"$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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},{"$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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},{"$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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},{"$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","required":["point","steps","coordinates"],"properties":{"point":{"type":"string"},"steps":{"type":"number"},"coordinates":{"type":"array","items":{"type":"number","minItems":3,"maxItems":3}}}}},{"$id":"core/abstract/2d-data","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension data schema","type":"object","required":["xDataArray","yDataSeries"],"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"}}}}},{"$id":"core/abstract/2d-plot","$schema":"http://json-schema.org/draft-07/schema#","title":"2 dimension plot schema","type":"object","required":["xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"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"}}}}},{"$id":"core/abstract/3d-grid","$schema":"http://json-schema.org/draft-07/schema#","title":"3 dimensional grid schema","type":"object","required":["dimensions","shifts"],"properties":{"dimensions":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"shifts":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/abstract/coordinate-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/abstract/coordinate-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$id":"core/abstract/matrix-3x3","$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},{"$id":"core/abstract/vector-2d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/abstract/vector-3d","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","minItems":2,"maxItems":2,"items":{"type":"number"}},{"$id":"core/primitive/array-of-3-booleans","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 boolean elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"boolean"}},{"$id":"core/primitive/array-of-3-integers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},{"$id":"core/primitive/array-of-3-numbers","$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","required":["label"],"properties":{"label":{"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},{"$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","definitions":{"flowchart-id":{"required":["flowchartId"],"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"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}},{"$id":"core/primitive/linked-list/named-node","$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"}}},{"$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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"},"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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId"],"properties":{"type":{"type":"string"},"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","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","definitions":{"flowchart-id":{"required":["flowchartId"],"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"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named node in group schema","type":"object","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId","name"],"properties":{"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","type":"string"},"name":{"description":"entity name","type":"string"},"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","definitions":{"flowchart-id":{"required":["flowchartId"],"properties":{"flowchartId":{"description":"Unique flowchart ID of node","type":"string"}}}},"required":["flowchartId"],"properties":{"type":{"type":"string"},"next":{"description":"Flowchart ID of next node","type":"string"},"head":{"description":"Whether node is head node or not","type":"boolean"},"flowchartId":{"description":"Unique flowchart ID of node","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","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","required":["id","value"],"properties":{"value":{"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$id":"core/primitive/scalar","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","required":["value"],"properties":{"value":{"type":"number"}}},{"$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","required":["name","slug"],"properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}}},{"$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","required":["value"],"properties":{"value":{"type":"string"}}},{"$id":"core/reference/exabyte","$schema":"http://json-schema.org/draft-07/schema#","type":"object","required":["jobId","unitId"],"properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}}},{"$id":"core/reference/experiment/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition schema","type":"object","required":["name"],"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"}}},{"$id":"core/reference/experiment/location","$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},{"$id":"core/reference/experiment","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by experiment","type":"object","required":["conditions","authors","title","method","timestamp"],"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}}},{"$id":"core/reference/literature/name","$schema":"http://json-schema.org/draft-07/schema#","title":"experiment author schema","type":"object","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}},{"$id":"core/reference/literature/pages","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","type":"object","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},{"$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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},{"$id":"core/reference/modeling/exabyte","$schema":"http://json-schema.org/draft-07/schema#","title":"info for characteristic obtained by exabyte calculation","type":"object","required":["title","_id","owner"],"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}}},{"$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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}]},{"$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","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]$"},"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","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."},"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","description":"array of objects containing integer id each","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","required":["id"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","type":"object","required":["value"],"properties":{"value":{"type":"number"}}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"core/reusable/atomic-string","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic string schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"string","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$id":"core/reusable/atomic-vector","$schema":"http://json-schema.org/draft-07/schema#","title":"atomic vector schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"core/reusable/band-gap","$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}},{"$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","required":["shape"],"properties":{"shape":{"$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/box","$schema":"http://json-schema.org/draft-07/schema#","title":"Box Coordinate Condition Schema","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/reusable/coordinate-conditions/cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]},{"$id":"core/reusable/coordinate-conditions/plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$id":"core/reusable/coordinate-conditions/sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$id":"core/reusable/coordinate-conditions/triangular-prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$id":"core/reusable/dielectric-tensor-component","$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$id":"core/reusable/energy","$schema":"http://json-schema.org/draft-07/schema#","title":"energy schema","type":"object","required":["name","units","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"]}]},"value":{"type":"number"}}},{"$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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}},{"$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/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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},{"$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","required":["accuracy_level","value"],"properties":{"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}},{"$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","required":["c","h","e","G","me","eps0","mu0"],"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}}},{"$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","required":["name","value"],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","required":["name","value"],"properties":{"name":{"enum":["electronegativity"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"value":{"type":"number"}}}]}}}},{"$id":"in-memory-entity/base","$schema":"http://json-schema.org/draft-07/schema#","title":"Base in-memory entity schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"in-memory-entity/defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Defaultable in-memory entity schema","type":"object","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"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","type":"object","required":["name"],"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":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"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.","required":["key","name","severity","message"],"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."}}}}}},{"$id":"in-memory-entity/named","$schema":"http://json-schema.org/draft-07/schema#","title":"Named in-memory entity schema","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"}}},{"$id":"in-memory-entity/named-defaultable","$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"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","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","type":"object","required":["name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["_project","compute","name","status"],"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"job/compute","$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},{"$id":"job/compute-property","$schema":"http://json-schema.org/draft-07/schema#","title":"Compute Property Schema","type":"object","required":["compute"],"properties":{"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"job","$schema":"http://json-schema.org/draft-07/schema#","title":"job schema","type":"object","required":["_project","compute","name","status","workflow"],"properties":{"workflow":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},"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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"_material":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"parent":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"},"compute":{"$schema":"http://json-schema.org/draft-07/schema#","title":"compute arguments schema","description":"Compute schema","type":"object","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"material/consistency-check","$schema":"http://json-schema.org/draft-07/schema#","title":"material 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.","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."},"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'"},"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."}}},{"$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","required":["basis","lattice"],"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}}}},{"$id":"material/metadata/boundary-conditions","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","additionalProperties":true,"properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}}},{"$id":"material/metadata/bulk-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata bulk properties","type":"object","additionalProperties":true,"properties":{"bulkId":{"description":"Source bulk material id used to generate the slab","type":"string"}}},{"$id":"material/metadata/slab-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata slab properties","type":"object","additionalProperties":true,"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"}}},{"$id":"material/metadata","$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata schema","type":"object","required":["metadata"],"properties":{"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$id":"material","$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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.","type":"object","required":["stack_components","direction"],"properties":{"stack_components":{"type":"array","minItems":2,"maxItems":3,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["stack_components","direction"],"type":"object","properties":{"stack_components":{"maxItems":2,"type":"array","minItems":2,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"x","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"actual_angle":{"type":"number","description":"The actual angle between the two phases","minimum":0,"maximum":360},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","required":["stack_components","direction"],"properties":{"direction":{"default":"z","$schema":"http://json-schema.org/draft-07/schema#","title":"Axis Enum","type":"string","description":"Enum for axis types","enum":["x","y","z"]},"stack_components":{"type":"array","minItems":2,"maxItems":3,"description":"Components of the interface: slab, slab and vacuum","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}}]},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"xy_shift":{"default":[0,0],"description":"xy shift for the film as cartesian 2D vector on the xy plane.","$schema":"http://json-schema.org/draft-07/schema#","title":"vector 2d schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"gaps":{"description":"Gap distances between stack components as array of objects with id and value","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}}]},"merge_method":{"default":"REPLACE","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["cut_direction","direction","stack_components"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}}]},"merge_method":{"default":"REPLACE","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"cut_direction":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]},"merge_method":{"default":"REPLACE","$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/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.","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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["chemical_element"],"properties":{"chemical_element":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}}}]},"merge_method":{"default":"REPLACE","$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/pristine-structures/three-dimensional/ideal-crystal","$schema":"http://json-schema.org/draft-07/schema#","title":"Ideal Crystal Schema","description":"An ideal, perfect crystal structure","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"y","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"x","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"y","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["direction","stack_components","strain_matrix","xy_supercell_matrix"],"type":"object","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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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.","required":["bond_length","merge_components","merge_method","passivant"],"properties":{"merge_components":{"type":"array","minItems":2,"items":{"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material schema","type":"object","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_element"]}]}}}]}},"merge_method":{"default":"ADD","$schema":"http://json-schema.org/draft-07/schema#","title":"Merge Methods Enum","description":"Available methods for merging components","type":"string","enum":["ADD","REPLACE","YIELD"]},"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","required":["chemical_element"],"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"]}}},"bond_length":{"type":"number","default":1,"description":"The bond length for the passivating atoms"}}},{"$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","minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}}},{"$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","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},{"$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","minItems":2,"maxItems":2,"default":[[1,0],[0,1]],"items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"integer"}}},{"$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","required":["crystal","coordinate"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$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","required":["coordinate","crystal","element"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}},"required":["chemical_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","required":["crystal","coordinate_condition"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}},{"$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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},{"$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","required":["center_coordinate","shape"],"properties":{"center_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["max_coordinate","min_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"box","default":"box","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"min_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"max_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Sphere Coordinate Condition Schema","required":["radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"sphere","default":"sphere","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Cylinder Coordinate Condition Schema","required":["max_z","min_z","radius","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"cylinder","default":"cylinder","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"radius":{"type":"number","minimum":0},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Triangular Prism Coordinate Condition Schema","required":["max_z","min_z","position_on_surface_1","position_on_surface_2","position_on_surface_3","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"triangular_prism","default":"triangular_prism","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"position_on_surface_1":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"position_on_surface_3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 2 number elements schema","type":"array","minItems":2,"maxItems":2,"items":{"type":"number"}},"min_z":{"type":"number"},"max_z":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane Coordinate Condition Schema","required":["plane_normal","plane_point_coordinate","shape"],"description":"Base interface for coordinate shape filters","type":"object","properties":{"shape":{"const":"plane","default":"plane","$schema":"http://json-schema.org/draft-07/schema#","title":"Coordinate Shape Enum","type":"string","enum":["cylinder","sphere","box","triangular_prism","plane"]},"plane_normal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"plane_point_coordinate":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}]}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}},{"$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","required":["chemical_element"],"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"]}}},{"$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","required":["chemical_element"],"properties":{"chemical_element":{"default":"Vac","description":"Extra elements, used for convenience purposed","enum":["X","Vac"]}}},{"$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","required":["crystal","miller_indices_2d"],"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices_2d","termination_top"],"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"},"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"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","minItems":3,"maxItems":3,"default":[1,1,1],"items":{"type":"integer","minimum":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","required":["crystal","strain_matrix"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"strain_matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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","required":["crystal","strain_percentage"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"strain_percentage":{"type":"number","description":"Percentage of uniform strain to apply to the crystal structure"}}},{"$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","required":["crystal","matrix"],"properties":{"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"matrix":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$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","required":["crystal","miller_indices","terminations"],"properties":{"terminations":{"type":"array","minItems":1,"description":"All possible terminations for this orientation.","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"}}}},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices","terminations"],"properties":{"terminations":{"type":"array","minItems":1,"description":"All possible terminations for this orientation.","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"}}}},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["crystal","miller_indices"],"properties":{"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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.","type":"object","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.","type":"object","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","required":["crystal","miller_indices","number_of_repetitions","termination_top"],"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"},"miller_indices":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Miller Indices Schema","description":"Miller indices [h, k, l] defining crystallographic planes","default":[0,0,1],"type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}},"crystal":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Crystal Schema","description":"A crystal structure, referencing the base material schema","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"use_conventional_cell":{"type":"boolean","description":"Use the conventional cell for the crystal structure","default":true}}},{"$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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"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","required":["direction","size","crystal"],"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","type":"object","required":["basis","lattice","metadata","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}}}}]},"direction":{"default":"z","$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["merge_components","merge_method"],"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"]}}},{"$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","required":["stack_components","direction"],"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id and value schema","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"type":"number","description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["basis","lattice","metadata","name"],"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).","properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},"lattice":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},"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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"discriminator":{"propertyName":"name"},"required":["name"]}},"external":{"$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","origin","source"],"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","enum":["MaterialsProject","MaterialsProjectLegacy","ICSD","2dmatpedia","MaterialsVirtualLab"]},"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"}}},"src":{"$schema":"http://json-schema.org/draft-07/schema#","title":"file source schema","description":"file source with the information inside","type":"object","required":["filename","text","hash"],"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"}}},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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","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.","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."},"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'"},"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."}}}},"metadata":{"type":"object","default":{},"anyOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"material metadata boundary conditions","type":"object","properties":{"boundaryConditions":{"type":"object","required":["type","offset"],"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"}}}},"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}],"additionalProperties":true}}},"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","minItems":3,"maxItems":3,"default":[[1,0,0],[0,1,0],[0,0,1]],"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 integer elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"integer"}}}}},{"$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","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}}},{"$id":"method/categorized-method","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","required":["name","units"],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"method/method-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"MethodParameters","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","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"method","$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["fd"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Numerical differentiation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh/nstruct","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category nstruct schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["nstruct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh/struct/cartesian","$schema":"http://json-schema.org/draft-07/schema#","title":"Cartesian grid schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cartesian"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["struct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["struct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr/mesh","$schema":"http://json-schema.org/draft-07/schema#","title":"Meshing method category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["mesh"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/discr","$schema":"http://json-schema.org/draft-07/schema#","title":"Discretization category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["discr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["basisExp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["lin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol/poly","$schema":"http://json-schema.org/draft-07/schema#","title":"Polynomial interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["poly"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol/spline","$schema":"http://json-schema.org/draft-07/schema#","title":"Spline interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["spline"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx/ipol","$schema":"http://json-schema.org/draft-07/schema#","title":"Interpolation category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["ipol"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/fapprx","$schema":"http://json-schema.org/draft-07/schema#","title":"Unstructured meshing category fapprx schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["fapprx"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["volume"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["sphere","cube","rect-prism","tri-prism","cylinder","cone","tetrahedron","sq-pyr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["analytic"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/mathematical/intgr/analytic","$schema":"http://json-schema.org/draft-07/schema#","title":"Analytic integral category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["analytic"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"tier3":{"enum":["order1"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"tier3":{"enum":["order2"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diffeq"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["gauss"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr/numquad/newcot","$schema":"http://json-schema.org/draft-07/schema#","title":"Newton-Cotes quadrature rules schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["newcot"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr/numquad","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods for the numerical quadrature schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["numquad"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","properties":{"type":{"enum":["fourier"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["transf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"methods-category/mathematical/intgr/transf","$schema":"http://json-schema.org/draft-07/schema#","description":"Integral transform methods","title":"Integral transform methods schema","type":"object","properties":{"tier2":{"enum":["transf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/intgr","$schema":"http://json-schema.org/draft-07/schema#","title":"Integration category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["intgr"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/dcomp","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix decomposition methods schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["dcomp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/diag/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["davidson"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["lintra"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg/matf","$schema":"http://json-schema.org/draft-07/schema#","title":"Matrix function methods schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["matf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/linalg","$schema":"http://json-schema.org/draft-07/schema#","title":"Linear Algebra category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["bracket"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["local"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["order1"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["order2"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/diff/ordern/cg","$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/diff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for differentiable functions category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["direct"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["pop"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["stoch"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/ndiff","$schema":"http://json-schema.org/draft-07/schema#","title":"Optimization methods for non-differentiable functions category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["ndiff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/root/bracket","$schema":"http://json-schema.org/draft-07/schema#","title":"Bracketing method for finding roots category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["bracket"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["iterative"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt/root","$schema":"http://json-schema.org/draft-07/schema#","title":"Root finding category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["root"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/opt","$schema":"http://json-schema.org/draft-07/schema#","title":"Mathematical opt schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["linear","kernel_ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["least_squares","ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["dunning"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf/ao/pople","$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["pople"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["pople","dunning","other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["psp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["us","nc","nc-fr","paw","coulomb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf/pw","$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["pw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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":"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","properties":{"type":{"enum":["smearing"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["tetrahedron"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["linear","optimized","bloechl"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},{"$id":"methods-category/physical/qm/wf","$schema":"http://json-schema.org/draft-07/schema#","title":"Methods related to wave functions schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-category/physical/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum-Mechanical method category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"methods-directory/legacy/localorbital","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method localorbital","type":"object","required":["type","subtype"],"properties":{"type":{"const":"localorbital","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"const":"pople","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/pseudopotential","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method pseudopotential","type":"object","required":["type","subtype"],"properties":{"type":{"const":"pseudopotential","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"enum":["paw","nc","us","any"],"default":"us","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method regression","type":"object","required":["data","precision","subtype","type"],"properties":{"type":{"enum":["linear","kernel_ridge"],"description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"enum":["least_squares","ridge"],"description":"general subtype of this method, eg. `ultra-soft`","type":"string"},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","description":"Object showing the actual possible precision based on theory and implementation","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}}}}},"data":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression data","type":"object","description":"additional data specific to method, eg. array of pseudopotentials","additionalProperties":true,"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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}},"searchText":{"type":"string"}}}}},{"$id":"methods-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"legacy method unknown","type":"object","required":["type","subtype"],"properties":{"type":{"const":"unknown","description":"general type of this method, eg. `pseudopotential`","type":"string"},"subtype":{"const":"unknown","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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Conjugate gradient method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["cg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ordern"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diff"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["opt"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"methods-directory/mathematical/davidson","$schema":"http://json-schema.org/draft-07/schema#","title":"Unit method davidson schema","description":"Davidson diagonalization method","type":"object","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Davidson diagonalization method schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["davidson"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["diag"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["linalg"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}}}},{"$id":"methods-directory/mathematical/regression/dataset","$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}},{"$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","required":["xFit","dualCoefficients","perFeature"],"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","required":["name"],"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"}}}}}},{"$id":"methods-directory/mathematical/regression/linear/data-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"linear regression parameters schema","type":"object","required":["intercept","perFeature"],"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","required":["name"],"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"}}}}}},{"$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","required":["name"],"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"}}},{"$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","required":["trainingError"],"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"}}}}}},{"$id":"methods-directory/mathematical/regression/precision-per-property","$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}},{"$id":"methods-directory/mathematical/regression","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method regression","type":"object","required":["categories","data","name","precision"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"linear methods category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["linear","kernel_ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["least_squares","ridge"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"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"}]}}},"precision":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision","type":"object","description":"Object showing the actual possible precision based on theory and implementation","properties":{"perProperty":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression precision per property schema","type":"object","required":["trainingError"],"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"}}}}}},"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","required":["name"],"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":["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","required":["name"],"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":["xFit","dualCoefficients","perFeature"]}]}},"dataSet":{"$schema":"http://json-schema.org/draft-07/schema#","description":"dataset for ml","type":"object","required":["exabyteIds"],"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"}}}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-dunning":{"type":"object","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dunning correlation-consistent basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["dunning"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["cc-pvdz","cc-pvtz","cc-pvqz"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-other":{"type":"object","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Other (neither Pople nor Dunning) basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["other"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["sto-3g","sto-4g","sto-6g","def2-svp","def2-tzvp","def2-qzvp","cbs-qb3"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"definitions":{"ao-basis-pople":{"type":"object","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}}},"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pople basis set category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["pople"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ao"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"type":"object","description":"Instructive parameters defining the method","properties":{"basisSlug":{"enum":["3-21G","6-31G","6-311G"]}}},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},"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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pseudopotential category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["psp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["us","nc","nc-fr","paw","coulomb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"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","required":["element","type","exchangeCorrelation","source","path","apps","name","hash"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}}},"source":{"type":"object","description":"TODO: remove in the future","properties":{"info":{"type":"object"},"type":{"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Plane wave catgeory schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["pw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]},"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["categories","name"],"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","properties":{"type":{"enum":["smearing"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["gaussian","marzari-vanderbilt","methfessel-paxton","fermi-dirac"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"methods-directory/physical/tetrahedron","$schema":"http://json-schema.org/draft-07/schema#","title":"unit method tetrahedron","type":"object","required":["categories","name"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Tetrahedron method for Brillouin zone integration category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["tetrahedron"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["linear","optimized","bloechl"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["wf"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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"}]}}},"parameters":{"description":"Instructive parameters defining the method","type":"object"},"precision":{"description":"Object showing the actual possible precision based on theory and implementation","type":"object"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"model/categorized-model","$schema":"http://json-schema.org/draft-07/schema#","title":"categorized model","type":"object","required":["categories","method","name","parameters"],"properties":{"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized method","type":"object","required":["name","units"],"properties":{"units":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"categorized unit method","type":"object","required":["name"],"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"},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","additionalProperties":true,"properties":{"functional":{"enum":["pbe","pbesol"]}}},{"$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","additionalProperties":true,"properties":{"functional":{"enum":["pz"]}}},{"$id":"model/mixins/dft/mgga-functional","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","additionalProperties":true,"properties":{"functional":{"enum":["scan"]}}},{"$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","additionalProperties":true,"properties":{"spinOrbitCoupling":{"type":"boolean"}}},{"$id":"model/mixins/spin-polarization","$schema":"http://json-schema.org/draft-07/schema#","title":"Spin-polarization mixin","type":"object","additionalProperties":true,"properties":{"spinPolarization":{"enum":["collinear","non-collinear"]}}},{"$id":"model/model-parameters","$schema":"http://json-schema.org/draft-07/schema#","title":"ModelParameters","type":"object","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"]}}}],"additionalProperties":true,"properties":{"hubbardType":{"enum":["u"]},"spinPolarization":{"enum":["collinear","non-collinear"]},"spinOrbitCoupling":{"type":"boolean"},"dispersionCorrection":{"enum":["dft-d2","dft-d3","xdm","ts"]}}},{"$id":"model/model-without-method","$schema":"http://json-schema.org/draft-07/schema#","title":"model without method schema (base)","type":"object","required":["categories","name","parameters"],"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"model","$schema":"http://json-schema.org/draft-07/schema#","title":"base model","type":"object","required":["type","subtype","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["gw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["g0w0","evgw0","evgw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/abin","$schema":"http://json-schema.org/draft-07/schema#","title":"Ab initio category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["double-hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["gga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["lda"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["mgga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft/ksdft","$schema":"http://json-schema.org/draft-07/schema#","title":"Kohn-Sham DFT category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm/dft","$schema":"http://json-schema.org/draft-07/schema#","title":"Density functional theory category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["semp"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb/qm","$schema":"http://json-schema.org/draft-07/schema#","title":"Quantum mechanical category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/pb","$schema":"http://json-schema.org/draft-07/schema#","title":"physics-based model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["re"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/st/det/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"machine learning model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier3":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-category/st/det","$schema":"http://json-schema.org/draft-07/schema#","title":"deterministic model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"tier2":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"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","description":"Used to categorize entities such as models and methods","properties":{"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":"models-directory/double-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model double hybrid functional","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT double hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["double-hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Double hybrid functional mixin","type":"object","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}],"description":"Model parameters defined in-place or via model mixins","properties":{"functional":{"enum":["b2plyp"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/gga","$schema":"http://json-schema.org/draft-07/schema#","title":"model generalized gradient approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["gga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GGA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["pbe","pbesol"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/gw","$schema":"http://json-schema.org/draft-07/schema#","title":"model gw approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"GW category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["gw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["g0w0","evgw0","evgw"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["abin"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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","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}],"description":"Model parameters defined in-place or via model mixins","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"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"model hybrid functional","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["hybrid"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Hybrid functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","properties":{"functional":{"enum":["hse06","b3lyp"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/lda","$schema":"http://json-schema.org/draft-07/schema#","title":"model local density approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["lda"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"LDA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["pz"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/dft-hybrid","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT hybrid model schema","type":"object","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/dft-lda","$schema":"http://json-schema.org/draft-07/schema#","title":"DFT LDA model schema","type":"object","required":["type","subtype","functional","method"],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/ml","$schema":"http://json-schema.org/draft-07/schema#","title":"ML model schema","type":"object","required":["type","subtype","method"],"properties":{"type":{"enum":["ml"]},"subtype":{"enum":["re"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/legacy/unknown","$schema":"http://json-schema.org/draft-07/schema#","title":"Unknown model schema","type":"object","required":["type","subtype","method"],"properties":{"type":{"enum":["unknown"]},"subtype":{"enum":["unknown"]},"method":{"$schema":"http://json-schema.org/draft-07/schema#","title":"base method","type":"object","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}}},{"$id":"models-directory/mgga","$schema":"http://json-schema.org/draft-07/schema#","title":"model meta generalized gradient approximation","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"DFT meta-GGA functional category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"subtype":{"enum":["mgga"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ksdft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["dft"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["qm"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["pb"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Meta-GGA functional mixin","type":"object","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"]}}}],"description":"Model parameters defined in-place or via model mixins","additionalProperties":true,"properties":{"functional":{"enum":["scan"]}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"models-directory/re","$schema":"http://json-schema.org/draft-07/schema#","title":"model regression","description":"machine learning model type/subtype schema","type":"object","required":["categories","name","parameters"],"properties":{"categories":{"$schema":"http://json-schema.org/draft-07/schema#","title":"regression model category schema","type":"object","description":"Used to categorize entities such as models and methods","properties":{"type":{"enum":["re"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["ml"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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":{"enum":["det"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"object","properties":{"name":{"description":"descriptive human-readable name of entry","type":"string"},"slug":{"description":"machine-readable identifier","type":"string"}},"required":["name","slug"]},{"type":"string"}]},"tier1":{"enum":["st"],"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry or slug","description":"contains either object with slugified entry or slug only as a string","oneOf":[{"$schema":"http://json-schema.org/draft-07/schema#","title":"slugified entry","description":"container for machine- and human-readable identifier","type":"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}},"name":{"description":"entity name","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"},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}}}},{"$id":"project","$schema":"http://json-schema.org/draft-07/schema#","title":"project schema","type":"object","required":["name"],"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"metadata":{"type":"object"}}},{"$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","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"elemental-ratio","description":"ration of this element in the compound","type":"object","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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}}],"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","required":["name","value"],"properties":{"name":{"enum":["atomic_radius"]},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"]},"value":{"type":"number"}}},{"$id":"properties-directory/elemental/electronegativity","$schema":"http://json-schema.org/draft-07/schema#","title":"electronegativity","description":"electronegativity for the element (Pauling scale)","type":"object","required":["name","value"],"properties":{"name":{"enum":["electronegativity"]},"value":{"type":"number"}}},{"$id":"properties-directory/elemental/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential elemental property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},"value":{"type":"number"}}},{"$id":"properties-directory/enum-options","definitions":{"ExternalSource":{"type":"string","enum":["ICSD","MaterialsProject","MaterialsProjectLegacy"]},"PropertyType":{"type":"string","enum":["scalar","non-scalar","tensor","object"]},"ScalarPropertyEnum":{"type":"string","enum":["fermi_energy","formation_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_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"]},"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","required":["name","host","port","token"],"properties":{"name":{"enum":["jupyter_notebook_endpoint"]},"host":{"type":"string"},"port":{"type":"number"},"token":{"type":"string"}}},{"$id":"properties-directory/non-scalar/average-potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"],"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["average_potential_profile"]},"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"}}}}},{"$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","required":["name","values"],"properties":{"name":{"enum":["band_gaps"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"band gap schema","type":"object","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"weight":{"type":"number"},"eigenvalues":{"type":"array","items":{"type":"object","properties":{"spin":{"type":"number"},"energies":{"type":"array"},"occupations":{"type":"array"}}}}}}}}},{"$id":"properties-directory/non-scalar/band-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Band structure property schema","type":"object","required":["name","spin","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["kpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}},"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"}}}}},{"$id":"properties-directory/non-scalar/charge-density-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["charge density"],"description":"label of an axis object","type":"string"},"units":{"enum":["e/A"],"description":"units for an axis","type":"string"}}},"name":{"enum":["charge_density_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/density-of-states","$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","required":["legend","name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["density of states"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/unitcell"],"description":"units for an axis","type":"string"}}},"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]}}}},"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"}}}}},{"$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","required":["name","values"],"properties":{"name":{"enum":["dielectric_tensor"]},"values":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Dielectric Tensor","type":"object","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}}}},{"$id":"properties-directory/non-scalar/file-content","$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","required":["name","filetype","objectData"],"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"}}},"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"}}},{"$id":"properties-directory/non-scalar/final-structure","$schema":"http://json-schema.org/draft-07/schema#","title":"Final structure property schema","type":"object","required":["name","isRelaxed","materialId"],"properties":{"name":{"enum":["final_structure"]},"isRelaxed":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}}},{"$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","required":["name","values","units"],"properties":{"name":{"enum":["hubbard_u"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","atomicSpecies","orbitalName","value"],"$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.","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]$"},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v_nn"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$id":"properties-directory/non-scalar/is-relaxed","$schema":"http://json-schema.org/draft-07/schema#","title":"Is relaxed property schema","type":"object","required":["name","value","materialId"],"properties":{"name":{"enum":["is_relaxed"]},"value":{"type":"boolean"},"materialId":{"description":"Material's identity","type":"string"}}},{"$id":"properties-directory/non-scalar/phonon-dispersions","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["qpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dispersions"]},"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"}}}}},{"$id":"properties-directory/non-scalar/phonon-dos","$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon density of states property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Phonon DOS"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/cm-1","states/THz","states/meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dos"]},"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"}}}}},{"$id":"properties-directory/non-scalar/potential-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["potential_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/reaction-energy-profile","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["reaction coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["reaction_energy_profile"]},"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"}}}}},{"$id":"properties-directory/non-scalar/stress-tensor","$schema":"http://json-schema.org/draft-07/schema#","title":"Stress tensor property schema","type":"object","required":["name","value","units"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"matrix 3x3 schema","type":"array","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"name":{"enum":["stress_tensor"]},"units":{"enum":["kbar","pa"]}}},{"$id":"properties-directory/non-scalar/total-energy-contributions","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy contributions property schema","type":"object","required":["name"],"properties":{"temperatureEntropy":{"description":"product of temperature and configurational entropy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["temperature_entropy"]},"value":{"type":"number"}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["harris_foulkes"]},"value":{"type":"number"}}},"smearing":{"description":"smearing energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["smearing"]},"value":{"type":"number"}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["one_electron"]},"value":{"type":"number"}}},"hartree":{"description":"energy due to coulomb potential","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree"]},"value":{"type":"number"}}},"exchange":{"description":"exchange energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange"]},"value":{"type":"number"}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange_correlation"]},"value":{"type":"number"}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["ewald"]},"value":{"type":"number"}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["alphaZ"]},"value":{"type":"number"}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["atomic_energy"]},"value":{"type":"number"}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["eigenvalues"]},"value":{"type":"number"}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]},"value":{"type":"number"}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]},"value":{"type":"number"}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree_fock"]},"value":{"type":"number"}}},"name":{"enum":["total_energy_contributions"]},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]}}},{"$id":"properties-directory/non-scalar/vibrational-spectrum","$schema":"http://json-schema.org/draft-07/schema#","title":"Vibrational spectrum property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency","wavenumber"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Intensity","Absorbance","Absorption coefficient"],"description":"label of an axis object","type":"string"},"units":{"enum":["(debye/angstrom)^2","km/mol","m/mol","a.u."],"description":"units for an axis","type":"string"}}},"name":{"enum":["vibrational_spectrum"]},"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"}}}}},{"$id":"properties-directory/non-scalar/wavefunction-amplitude","$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["amplitude"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"name":{"enum":["wavefunction_amplitude"]},"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"}}}}},{"$id":"properties-directory/non-scalar/workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"properties":{"name":{"enum":["workflow:pyml_predict"],"description":"entity name","type":"string"},"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$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","required":["values","units"],"properties":{"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$id":"properties-directory/scalar/electron-affinity","$schema":"http://json-schema.org/draft-07/schema#","title":"Electron affinity property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["electron_affinity"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/fermi-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["fermi_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/formation-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["formation_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/homo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["homo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/ionization-potential","$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/lumo-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["lumo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/reaction-energy-barrier","$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["reaction_energy_barrier"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/surface-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["surface_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/total-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/total-force","$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/valence-band-offset","$schema":"http://json-schema.org/draft-07/schema#","title":"Valence band offset property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["valence_band_offset"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$id":"properties-directory/scalar/zero-point-energy","$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["zero_point_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","required":["name","units","values"],"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","required":["name","values"],"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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}},{"$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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}},{"$id":"properties-directory/structural/basis/bonds","$schema":"http://json-schema.org/draft-07/schema#","title":"bonds schema","type":"array","uniqueItems":true,"items":{"type":"object","properties":{"atomPair":{"description":"indices of the two connected atoms","type":"array","minItems":2,"maxItems":2,"$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","type":"object","required":["id"],"properties":{"id":{"description":"integer id of this entry","type":"integer"}}}},"bondType":{"type":"string","enum":["single","double","triple","quadruple","aromatic","tautomeric","dative","other"]}}}},{"$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","required":["name","type","offset"],"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"}}},{"$id":"properties-directory/structural/basis/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","enum":["crystal","cartesian"],"default":"crystal"},{"$id":"properties-directory/structural/basis","$schema":"http://json-schema.org/draft-07/schema#","title":"basis schema","type":"object","required":["elements","coordinates"],"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","type":"object","required":["id","value"],"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"]}],"type":"string"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"coordinate 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"$schema":"http://json-schema.org/draft-07/schema#","title":"basis units enum","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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$id":"properties-directory/structural/density","$schema":"http://json-schema.org/draft-07/schema#","title":"density schema","type":"object","required":["value"],"properties":{"name":{"enum":["density"]},"units":{"enum":["g/cm^3"]},"value":{"type":"number"}}},{"$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","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","required":["value"],"properties":{"name":{"enum":["inchi"]},"value":{"type":"string"}}},{"$id":"properties-directory/structural/inchi-key","$schema":"http://json-schema.org/draft-07/schema#","title":"InChI key representation schema","type":"object","required":["value"],"properties":{"name":{"enum":["inchi_key"]},"value":{"type":"string"}}},{"$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","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","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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}},{"$id":"properties-directory/structural/lattice/vectors/units-enum","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice vectors units enum","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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},{"$id":"properties-directory/structural/lattice","$schema":"http://json-schema.org/draft-07/schema#","title":"lattice schema","type":"object","required":["a","b","c","alpha","beta","gamma"],"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","required":["a","b","c"],"properties":{"a":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"b":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"c":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","enum":["angstrom","bohr"],"default":"angstrom"}}},"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","default":{"length":"angstrom","angle":"degree"},"properties":{"length":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units length enum","enum":["angstrom","bohr"],"default":"angstrom"},"angle":{"$schema":"http://json-schema.org/draft-07/schema#","title":"lattice units angle enum","enum":["degree","radian"],"default":"degree"}}}}},{"$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","required":["name","values","units"],"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"units":{"enum":["uB"]}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}}},"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","required":["value"],"properties":{"name":{"enum":["p-norm"]},"degree":{"type":"integer","description":"degree of the dimensionality of the norm"},"value":{"type":"number"}}},{"$id":"properties-directory/structural/patterns/functional-group","$schema":"http://json-schema.org/draft-07/schema#","title":"functional group pattern schema","type":"object","required":["name"],"properties":{"name":{"enum":["functional_group"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"SMARTS":{"description":"SMARTS string for classification of FG; https://en.wikipedia.org/wiki/SMILES_arbitrary_target_specification","type":"string"}}},{"$id":"properties-directory/structural/patterns/ring","$schema":"http://json-schema.org/draft-07/schema#","title":"ring pattern schema","type":"object","required":["name"],"properties":{"name":{"enum":["ring"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}},"isAromatic":{"type":"boolean"}}},{"$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","required":["name"],"properties":{"name":{"enum":["special_bond"]},"atoms":{"type":"array","$schema":"http://json-schema.org/draft-07/schema#","title":"array of ids","description":"array of objects containing integer id each","items":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"object with id","description":"object containing integer id","required":["id"],"properties":{"isConnector":{"description":"whether atom connects to atoms outside of functional group.","type":"boolean"},"id":{"description":"integer id of this entry","type":"integer"}}}}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"units":{"enum":["angstrom"]},"value":{"type":"number"}}},"name":{"enum":["symmetry"]}}},{"$id":"properties-directory/structural/volume","$schema":"http://json-schema.org/draft-07/schema#","title":"volume schema","type":"object","required":["value"],"properties":{"name":{"enum":["volume"]},"units":{"enum":["angstrom^3"]},"value":{"type":"number"}}},{"$id":"properties-directory/workflow/convergence/electronic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence electronic property schema","type":"object","required":["data","name","units"],"properties":{"name":{"enum":["convergence_electronic"]},"units":{"enum":["eV","Ry","hartree"]},"data":{"type":"array","items":{"type":"array","items":{"type":"number"}}}}},{"$id":"properties-directory/workflow/convergence/ionic","$schema":"http://json-schema.org/draft-07/schema#","title":"Convergence ionic property schema","type":"object","required":["data","name","units"],"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","required":["energy"],"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"}}}}}}}}},{"$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","required":["tolerance","units","data"],"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","required":["value","grid"],"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"}}}}}},{"$id":"property/holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Property holder schema","type":"object","required":["data","source","repetition","exabyteId"],"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","required":["name","units","value"],"properties":{"name":{"enum":["valence_band_offset"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Zero point energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["zero_point_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Pressure property schema","description":"average pressure in unit cell","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["pressure"]},"units":{"enum":["kbar","pa"]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy barrier property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["reaction_energy_barrier"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Surface energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["surface_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Thermal correction to enthalpy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["thermal_correction_to_enthalpy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Total forces property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["total_force"]},"units":{"enum":["eV/bohr","eV/angstrom","Ry/a.u.","newton","kg*m/s^2","eV/a.u."]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Fermi energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["fermi_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Formation energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["formation_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"HOMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["homo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Ionization potential scalar property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["ionization_potential"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"LUMO energy property schema","type":"object","required":["name","units","value"],"properties":{"name":{"enum":["lumo_energy"],"type":"string"},"units":{"oneOf":[{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"]},{"enum":["eV/A^2"]}]},"value":{"type":"number"}}},{"$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","minItems":3,"maxItems":3,"items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}},"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","required":["type","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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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"]},"value":{"type":"number"}}}},"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.","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"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","required":["name","spin","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["kpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["band_structure"]},"spin":{"description":"spin of each band","type":"array","items":{"type":"number","enum":[0.5,-0.5]}},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Phonon band structure property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["qpoints"],"description":"label of an axis object","type":"string"},"units":{"enum":["crystal","cartesian"],"default":"crystal","description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dispersions"]},"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"}}}}},{"$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","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["temperature_entropy"]},"value":{"type":"number"}}},"harris_foulkes":{"description":"non self-consitent energy based on an input charge density","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["harris_foulkes"]},"value":{"type":"number"}}},"smearing":{"description":"smearing energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["smearing"]},"value":{"type":"number"}}},"one_electron":{"description":"kinetic + pseudopotential energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["one_electron"]},"value":{"type":"number"}}},"hartree":{"description":"energy due to coulomb potential","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree"]},"value":{"type":"number"}}},"exchange":{"description":"exchange energy","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange"]},"value":{"type":"number"}}},"exchange_correlation":{"description":"exchange and correlation energy per particle","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["exchange_correlation"]},"value":{"type":"number"}}},"ewald":{"description":"summation of interaction energies at long length scales due to coloumbic interactions","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["ewald"]},"value":{"type":"number"}}},"alphaZ":{"description":"divergent electrostatic ion interaction in compensating electron gas","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["alphaZ"]},"value":{"type":"number"}}},"atomicEnergy":{"description":"kinetic energy of wavefunctions in the atomic limit","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["atomic_energy"]},"value":{"type":"number"}}},"eigenvalues":{"description":"sum of one electron energies of kinetic, electrostatic, and exchange correlation","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["eigenvalues"]},"value":{"type":"number"}}},"PAWDoubleCounting2":{"description":"double counting correction 2","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_2"]},"value":{"type":"number"}}},"PAWDoubleCounting3":{"description":"double counting correction 3","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["PAW_double-counting_correction_3"]},"value":{"type":"number"}}},"hartreeFock":{"description":"hartree-fock contribution","type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"scalar schema","required":["value"],"properties":{"name":{"enum":["hartree_fock"]},"value":{"type":"number"}}},"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":"Phonon density of states property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["frequency"],"description":"label of an axis object","type":"string"},"units":{"enum":["cm-1","THz","meV"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["Phonon DOS"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/cm-1","states/THz","states/meV"],"description":"units for an axis","type":"string"}}},"name":{"enum":["phonon_dos"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["potential_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Wavefunction amplitude property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["amplitude"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"name":{"enum":["wavefunction_amplitude"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Reaction energy profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["reaction coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["reaction_energy_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Density of states property schema","type":"object","required":["legend","name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["density of states"],"description":"label of an axis object","type":"string"},"units":{"enum":["states/unitcell"],"description":"units for an axis","type":"string"}}},"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]}}}},"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"}}}}},{"$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","required":["part","frequencies","components"],"description":"Schema for a function of frequency yielding a nx3 matrix","properties":{"part":{"description":"Real or imaginary part of the dielectric tensor component","type":"string","enum":["real","imaginary"]},"spin":{"type":"number"},"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","minItems":3,"maxItems":3,"items":{"type":"number"}}}}}}},"required":["name","values"]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"File content property schema","type":"object","required":["name","filetype","objectData"],"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"}}},"pathname":{"description":"Relative path to the directory that contains the file.","type":"string"},"basename":{"description":"Basename of the file","type":"string","$comment":"isGenerative:true"}}},{"$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","required":["id","atomicSpecies","orbitalName","value"],"$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.","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]$"},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}},"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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$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","required":["name","units","values"],"properties":{"name":{"enum":["hubbard_v_nn"]},"units":{"enum":["eV"]},"values":{"type":"array","items":{"type":"object","required":["id","id2","atomicSpecies","atomicSpecies2","value"],"$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.","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."},"value":{"type":"number","description":"Value related to a specific property, e.g., Hubbard U, V etc."}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Average potential profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"enum":["km","m","cm","mm","um","nm","angstrom","a.u.","bohr","pm"],"description":"units for an axis","type":"string"}}},"yAxis":{"$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","type":"object","required":["label"],"properties":{"label":{"enum":["energy"],"description":"label of an axis object","type":"string"},"units":{"enum":["kcal/mol","kJ/mol","eV","J/mol","hartree","cm-1","Ry","eV/atom"],"description":"units for an axis","type":"string"}}},"name":{"enum":["average_potential_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Charge density profile property schema","type":"object","required":["name","xAxis","xDataArray","yAxis","yDataSeries"],"properties":{"xAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["z coordinate"],"description":"label of an axis object","type":"string"},"units":{"description":"units for an axis","type":"string"}}},"yAxis":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","title":"axis schema","required":["label"],"properties":{"label":{"enum":["charge density"],"description":"label of an axis object","type":"string"},"units":{"enum":["e/A"],"description":"units for an axis","type":"string"}}},"name":{"enum":["charge_density_profile"]},"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"Workflow property schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"properties":{"name":{"enum":["workflow:pyml_predict"],"description":"entity name","type":"string"},"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}},{"$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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","description":"object containing integer id and value each","type":"object","required":["id","value"],"properties":{"value":{"$schema":"http://json-schema.org/draft-07/schema#","title":"vector 3d schema","type":"array","minItems":3,"maxItems":3,"description":"value of this entry","items":{"type":"number"}},"id":{"description":"integer id of this entry","type":"integer"}}}},"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","required":["energy"],"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":["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","required":["type","info"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","required":["jobId","unitId"],"properties":{"jobId":{"description":"Job's identity","type":"string"},"unitId":{"description":"Id of the unit that extracted the result","type":"string"}}}}},"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"},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/meta-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Meta property holder schema","type":"object","required":["data","source"],"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}},"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","required":["accuracy_level","unit","value"],"properties":{"unit":{"description":"Unit of the energy value corresponding to a accuracy_level. The values are expressed in Ry.","type":"string","enum":["Ry"]},"accuracy_level":{"description":"Accuracy level determines suggested scalar value.","type":"string","enum":["standard","low","high"]},"value":{"type":"number"}}}}}}},"required":["element","type","exchangeCorrelation","source","path","apps","name","hash"]}]},"source":{"type":"object","required":["type"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/proto-holder","$schema":"http://json-schema.org/draft-07/schema#","title":"Proto property holder schema","type":"object","required":["data","source"],"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","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}],"description":"value of this entry"},"id":{"description":"integer id of this entry","type":"integer"}}}}},"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","required":["type","info"],"properties":{"type":{"description":"Type of the material property's source.","type":"string"},"info":{"type":"object","properties":{"materialId":{"type":"string"}}}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"}}},{"$id":"property/source","$schema":"http://json-schema.org/draft-07/schema#","title":"Property source schema","type":"object","required":["info"],"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["name"],"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"}}}},"location":{"$schema":"http://json-schema.org/draft-07/schema#","title":"location schema","type":"object","required":["latitude","longitude"],"properties":{"latitude":{"description":"location latitude","type":"number"},"longitude":{"description":"location longitude","type":"number"}}},"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.","$schema":"http://json-schema.org/draft-07/schema#","title":"pages schema","required":["start"],"properties":{"start":{"type":"string"},"end":{"type":"string"}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"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","required":["first","last"],"properties":{"first":{"type":"string"},"middle":{"type":"string"},"last":{"type":"string"},"affiliation":{"type":"string"}}}},"reference":{"type":"array","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.","items":{"type":"object"}}}}}},"required":["conditions","authors","title","method","timestamp"]}]}}},{"$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","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/application-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"application properties schema","type":"object","required":["shortName","summary","version","build"],"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/application-with-build-config","$schema":"http://json-schema.org/draft-07/schema#","title":"application with build config schema","type":"object","required":["build","name","shortName","summary","version"],"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software/executable","$schema":"http://json-schema.org/draft-07/schema#","title":"executable schema","type":"object","required":["applicationName","applicationVersion","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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"}}},{"$id":"software/executable-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"executable properties schema","type":"object","required":["applicationName","applicationVersion"],"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"}}},{"$id":"software/flavor","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},{"$id":"software/flavor-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"flavor properties schema","type":"object","required":["input","executableName","applicationName","applicationVersion"],"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},{"$id":"software/template","$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},{"$id":"software/template-properties","$schema":"http://json-schema.org/draft-07/schema#","title":"template properties schema","type":"object","required":["contextProviders","content","executableName","applicationName","applicationVersion"],"properties":{"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},{"$id":"software-directory/modeling/deepmd","$schema":"http://json-schema.org/draft-07/schema#","title":"DeePMD app schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["deepmd"],"description":"entity name","type":"string"},"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"],"description":"Application's short description.","type":"string"},"version":{"enum":["2.0.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["dp","lmp","python"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/modeling/espresso/arguments","$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},{"$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","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["lammps"],"description":"entity name","type":"string"},"summary":{"enum":["LAMMPS"],"description":"Application's short description.","type":"string"},"version":{"enum":["2025.07.22.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"build":{"enum":["GNU","Intel","CUDA"],"description":"Application build. e.g. VTST","type":"string"},"exec":{"enum":["lmp"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/modeling/nwchem","$schema":"http://json-schema.org/draft-07/schema#","title":"NWChem","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["NWChem"],"description":"entity name","type":"string"},"summary":{"enum":["NWChem: a comprehensive and scalable open-source solution for large scale molecular simulations"],"description":"Application's short description.","type":"string"},"version":{"enum":["6.6","7.0.2"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["nwchem"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$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","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","title":"execution unit input schema","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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"]}],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"software-directory/modeling/vasp","$schema":"http://json-schema.org/draft-07/schema#","title":"vienna ab-inito simulation package","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["vasp"],"description":"entity name","type":"string"},"summary":{"enum":["vienna ab-initio simulation package"],"description":"Application's short description.","type":"string"},"flavor":{"enum":["vasp","vasp_nscf","vasp_bands"]},"version":{"enum":["5.3.5"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["vasp"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/jupyter-lab","$schema":"http://json-schema.org/draft-07/schema#","title":"Jupyter Lab Application Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["jupyterLab"],"description":"entity name","type":"string"},"flavor":{"enum":["notebook"]},"summary":{"enum":["Jupyter Lab"],"description":"Application's short description.","type":"string"},"version":{"enum":["0.33.12"],"description":"Application version. e.g. 5.3.5","type":"string"},"exec":{"enum":["jupyter"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/python","$schema":"http://json-schema.org/draft-07/schema#","title":"Python Programing Language Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["python"],"description":"entity name","type":"string"},"flavor":{"enum":["python2","python3"]},"summary":{"enum":["Python Script"],"description":"Application's short description.","type":"string"},"version":{"enum":["2.7.5","3.6.1"],"description":"Application version. e.g. 5.3.5","type":"string"},"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/shell","$schema":"http://json-schema.org/draft-07/schema#","title":"Shell Scripting Language Schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"name":{"enum":["shell"],"description":"entity name","type":"string"},"flavor":{"enum":["sh","bash","zsh","csh"]},"summary":{"enum":["Shell Script"],"description":"Application's short description.","type":"string"},"version":{"enum":["4.2.46"],"description":"Application version. e.g. 5.3.5","type":"string"},"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":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"shortName":{"description":"The short name of the application. e.g. qe","type":"string"},"build":{"description":"Application build. e.g. VTST","type":"string"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},{"$id":"software-directory/scripting/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema for scripting-based applications","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","title":"execution unit input schema","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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"]}],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"system/-material","$schema":"http://json-schema.org/draft-07/schema#","title":"Material entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Material class","type":"string","enum":["Material"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/-parent-job","$schema":"http://json-schema.org/draft-07/schema#","title":"Parent job entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Job class","type":"string","enum":["Job"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/-project","$schema":"http://json-schema.org/draft-07/schema#","title":"Project entity reference schema","type":"object","required":["_id"],"properties":{"cls":{"description":"Project class","type":"string","enum":["Project"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/bankable","$schema":"http://json-schema.org/draft-07/schema#","title":"bankable schema","type":"object","required":["exabyteId","hash"],"properties":{"exabyteId":{"description":"Identity of the corresponding bank entity","type":"string"},"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}}},{"$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.","required":["key","name","severity","message"],"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."}}},{"$id":"system/creator","$schema":"http://json-schema.org/draft-07/schema#","title":"Creator entity reference schema","type":"object","required":["_id","cls"],"properties":{"cls":{"description":"Creator class","type":"string","enum":["User"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$id":"system/creator-account","$schema":"http://json-schema.org/draft-07/schema#","title":"creator account schema","type":"object","required":["creatorAccount"],"properties":{"creatorAccount":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}}},{"$id":"system/database-source","$schema":"http://json-schema.org/draft-07/schema#","title":"database source schema","description":"information about a database source","type":"object","required":["id","source","origin"],"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"}}},{"$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","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$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","required":["filename","text","hash"],"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"}}},{"$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.","required":["key","name","severity","message"],"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."}}}}}},{"$id":"system/history","$schema":"http://json-schema.org/draft-07/schema#","title":"history schema","type":"object","properties":{"history":{"type":"array","items":{"type":"object","required":["id","revision"],"properties":{"id":{"type":"string"},"revision":{"type":"number"}}}}}},{"$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","required":["type","action","payload"],"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"}}},{"$id":"system/in-set","$schema":"http://json-schema.org/draft-07/schema#","title":"System in-set schema","type":"object","required":["inSet"],"properties":{"inSet":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"},"type":{"type":"string"},"index":{"type":"number"}}}}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}}},"_materialsSet":{"$schema":"http://json-schema.org/draft-07/schema#","title":"entity reference schema","type":"object","required":["_id"],"properties":{"_id":{"description":"entity identity","type":"string"},"cls":{"description":"entity class","type":"string"},"slug":{"description":"entity slug","type":"string"}}},"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","required":["header","payload"],"properties":{"header":{"type":"object","required":["entity","version","timestamp"],"properties":{"entity":{"type":"object","required":["_id","name"],"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"]}}},"version":{"description":"Rupy-Webapp communication schema version.","type":"string"},"timestamp":{"description":"Timestamp of the message.","type":"number"}}},"payload":{"description":"Actual payload of the message.","type":"object"}}},{"$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","required":["name"],"properties":{"name":{"description":"entity name","type":"string"}}},{"$id":"system/owner","$schema":"http://json-schema.org/draft-07/schema#","title":"Entity owner reference schema","type":"object","required":["_id","cls"],"properties":{"cls":{"description":"Entity owner class","type":"string","enum":["Account"]},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"}}},{"$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","type":"object","required":["name"],"properties":{"name":{"description":"entity name","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"}}},{"$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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}},{"$id":"system/runtime-items","$schema":"http://json-schema.org/draft-07/schema#","title":"runtime items schema","type":"object","required":["preProcessors","postProcessors","monitors","results"],"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}}}},{"$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","properties":{"status":{"type":"string"},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}}}},{"$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","required":["properties","units","subworkflows"],"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}}}},{"$id":"workflow/base-flow","$schema":"http://json-schema.org/draft-07/schema#","title":"BaseFlow","type":"object","required":["name","units"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}}}},{"$id":"workflow/scope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow scope schema","type":"object","required":["global","local"],"properties":{"global":{"type":"object","additionalProperties":true},"local":{"type":"object","additionalProperties":true}}},{"$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","required":["model","properties","application","units"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}},{"$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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow/subworkflow","$schema":"http://json-schema.org/draft-07/schema#","title":"Subworkflow Schema","type":"object","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}},{"$id":"workflow/unit/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$id":"workflow/unit/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}},{"$id":"workflow/unit/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string"},"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"}}},{"$id":"workflow/unit/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$id":"workflow/unit/context/-base","$schema":"http://json-schema.org/draft-07/schema#","title":"base context item schema","type":"object","required":["name","isEdited","data","extraData"],"properties":{"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/-extra-data-material-hash","$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},{"$id":"workflow/unit/context/item/boundaryConditions","$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/collinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/cutoffs","$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/dynamics","$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/grid","$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/hubbard-j","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/hubbard-legacy","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/hubbard-u","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/hubbard-v","$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/input","$schema":"http://json-schema.org/draft-07/schema#","title":"input context item schema","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/mlSettings","$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/mlTrainTestSplit","$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/neb","$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$id":"workflow/unit/context/item/nonCollinearMagnetization","$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$id":"workflow/unit/context/item/path","$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}},{"$id":"workflow/unit/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$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","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"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","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}},{"$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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}},{"$id":"workflow/unit/input/-inputItemScope","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}},{"$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","required":["type","endpoint","endpoint_options"],"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"}}},{"$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","required":["type","collection","draft"],"properties":{"type":{"const":"db_collection"},"collection":{"description":"db collection name","type":"string"},"draft":{"description":"whether the result should be saved as draft","type":"boolean"}}},{"$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","required":["type","ids"],"properties":{"type":{"const":"db_ids"},"ids":{"description":"IDs of item to retrieve from db","type":"array","items":{"type":"string"}}}},{"$id":"workflow/unit/io/object-storage","$schema":"http://json-schema.org/draft-07/schema#","title":"object_storage io schema","type":"object","required":["type","objectData"],"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"},"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":"workflow/unit/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit schema","type":"object","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$id":"workflow/unit/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit schema","type":"object","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$id":"workflow/unit/mixins/assertion","$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit mixin schema","type":"object","required":["name","statement"],"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"}}},{"$id":"workflow/unit/mixins/assignment","$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit mixin schema","type":"object","required":["name","operand","value"],"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","required":["scope","name"],"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"}}}},"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"}]}}},{"$id":"workflow/unit/mixins/base","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow base unit mixin schema","type":"object","required":["type","flowchartId"],"properties":{"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}}},{"$id":"workflow/unit/mixins/condition","$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit mixin schema","type":"object","required":["input","statement","then","else","maxOccurrences"],"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","required":["scope","name"],"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"}}}},"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"}}},{"$id":"workflow/unit/mixins/execution","$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit mixin schema","type":"object","required":["type","input","application","executable","flavor","context"],"properties":{"type":{"const":"execution"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$id":"workflow/unit/mixins/io","$schema":"http://json-schema.org/draft-07/schema#","title":"data IO unit mixin schema","type":"object","required":["subtype","source","input"],"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$id":"workflow/unit/mixins/map","$schema":"http://json-schema.org/draft-07/schema#","title":"map unit mixin schema","type":"object","required":["input","workflowId"],"properties":{"type":{"const":"map"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$id":"workflow/unit/mixins/processing","$schema":"http://json-schema.org/draft-07/schema#","title":"processing unit mixin schema","type":"object","required":["operation","operationType","inputData"],"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)"}}},{"$id":"workflow/unit/mixins/reduce","$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit mixin schema","type":"object","required":["mapFlowchartId","input"],"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","required":["operation","arguments"],"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"}}}}}}},{"$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","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$id":"workflow/unit/runtime/-runtime-item-full-object","$schema":"http://json-schema.org/draft-07/schema#","title":"full result schema","type":"object","required":["name"],"properties":{"name":{"description":"The name of this item. e.g. 'my_custom_property. '","type":"string"}}},{"$id":"workflow/unit/runtime/-runtime-item-name-object","$schema":"http://json-schema.org/draft-07/schema#","title":"name result schema","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}},{"$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","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}},{"$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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"discriminator":{"propertyName":"type"},"required":["type"]},{"$id":"workflow","$schema":"http://json-schema.org/draft-07/schema#","title":"workflow schema","type":"object","required":["name","properties","subworkflows","units","workflows"],"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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"metadata":{"type":"object"},"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","required":["application","model","name","properties","units"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","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","required":["queue","nodes","ppn","timeLimit"],"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","default":{},"$schema":"http://json-schema.org/draft-07/schema#","title":"quantum espresso arguments schema","type":"object","additionalProperties":false,"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}}},"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"}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","source","subtype","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"io"},"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"},"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","required":["type","objectData"],"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"},"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"}}}],"discriminator":{"propertyName":"type"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"condition unit schema","type":"object","required":["else","flowchartId","input","maxOccurrences","monitors","name","postProcessors","preProcessors","results","statement","then","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"condition"},"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"},"input":{"description":"Input information for condition.","type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"workflow unit input schema","type":"object","required":["scope","name"],"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"}}}},"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"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assertion unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","statement","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assertion"},"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"},"statement":{"type":"string","description":"The statement to be evaluated"},"errorMessage":{"type":"string","description":"The error message to be displayed if the assertion fails"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit schema","type":"object","required":["application","context","executable","flavor","flowchartId","input","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"execution"},"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"},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"executable":{"$schema":"http://json-schema.org/draft-07/schema#","title":"Named defaultable in-memory entity schema","type":"object","required":["applicationName","applicationVersion","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"}}},"flavor":{"$schema":"http://json-schema.org/draft-07/schema#","title":"flavor schema","type":"object","required":["applicationName","applicationVersion","executableName","input","monitors","name","postProcessors","preProcessors","results"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"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","required":["name"],"properties":{"templateId":{"type":"string"},"templateName":{"type":"string"},"name":{"description":"name of the resulting input file, if different than template name","type":"string"}}}}}},"input":{"type":"array","items":{"$schema":"http://json-schema.org/draft-07/schema#","title":"execution unit input item schema","type":"object","required":["isManuallyChanged","template"],"properties":{"template":{"$schema":"http://json-schema.org/draft-07/schema#","title":"template schema","type":"object","required":["applicationName","applicationVersion","content","contextProviders","executableName","name"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"executableName":{"type":"string"},"applicationName":{"type":"string"},"applicationVersion":{"type":"string"},"contextProviders":{"type":"array","items":{"description":"render context provider names","type":"object","required":["name"],"properties":{"name":{"type":"string","tsType":"ContextProviderNameEnum"}}}},"content":{"description":"Content of the template. e.g. &CONTROL calculation='scf' ...","type":"string"}}},"rendered":{"description":"Rendered content of the input file. e.g. &CONTROL calculation='scf' ...","type":"string"},"isManuallyChanged":{"type":"boolean","default":false}}}},"context":{"type":"array","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","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."}},"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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","CELL_PARAMETERS","FIRST_IMAGE","LAST_IMAGE","INTERMEDIATE_IMAGES","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"FIRST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"LAST_IMAGE":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}},"INTERMEDIATE_IMAGES":{"type":"array","description":"Atomic positions blocks (ATOMIC_POSITIONS) for all intermediate NEB images.","items":{"type":"array","items":{"type":"object","required":["x","y","z"],"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}}}}},"contextProviderName":{"type":"string","const":"qe-neb","description":"Descriminator for AJV validator"}}},{"$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.","type":"object","required":["IBRAV","RESTART_MODE","ATOMIC_SPECIES","ATOMIC_SPECIES_WITH_LABELS","NAT","NTYP","NTYP_WITH_LABELS","ATOMIC_POSITIONS","ATOMIC_POSITIONS_WITHOUT_CONSTRAINTS","CELL_PARAMETERS","contextProviderName"],"properties":{"IBRAV":{"type":"integer"},"RESTART_MODE":{"type":"string","enum":["from_scratch","restart"],"default":"from_scratch"},"ATOMIC_SPECIES":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"ATOMIC_SPECIES_WITH_LABELS":{"type":"array","items":{"type":"object","required":["X","Mass_X","PseudoPot_X"],"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"}}}},"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","required":["x","y","z"],"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}}}},"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","minItems":3,"maxItems":3,"items":{"type":"number"}},"v2":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"v3":{"$schema":"http://json-schema.org/draft-07/schema#","title":"array of 3 number elements schema","type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}}}},"contextProviderName":{"type":"string","const":"qe-pwx","description":"Descriminator for AJV validator"}}},{"$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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"cutoffs context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"grid context item schema","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","required":["dimensions","gridMetricType","gridMetricValue"],"properties":{"dimensions":{"anyOf":[{"type":"array","items":{"type":"number"},"minItems":3,"maxItems":3},{"type":"array","items":{"type":"string"},"minItems":3,"maxItems":3}]},"shifts":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"reciprocalVectorRatios":{"type":"array","minItems":3,"maxItems":3,"items":{"type":"number"}},"gridMetricType":{"type":"string","enum":["KPPRA","spacing"]},"gridMetricValue":{"type":"number"},"preferGridMetric":{"type":"boolean"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"path context item schema","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","required":["point","steps"],"properties":{"point":{"type":"string"},"steps":{"type":"number"}}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_j context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_u context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_v context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"hubbard_legacy context item schema","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)"}}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"neb context item schema","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"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"boundaryConditions context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlSettings context item schema","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"]}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"mlTrainTestSplit context item schema","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}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"dynamics context item schema","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)"}}},"isEdited":{"type":"boolean"},"extraData":{"type":"object"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"collinearMagnetization context item schema","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","required":["startingMagnetization","isTotalMagnetization","totalMagnetization"],"properties":{"startingMagnetization":{"type":"array","items":{"type":"object","required":["atomicSpecies","value","index"],"properties":{"atomicSpecies":{"type":"string","title":"Atomic species"},"value":{"type":"number","title":"Starting magnetization","minimum":-1,"maximum":1},"index":{"type":"integer","title":"Index"}}}},"isTotalMagnetization":{"type":"boolean","title":"Set total magnetization instead"},"totalMagnetization":{"type":"number","title":"Total magnetization"}}},"extraData":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"nonCollinearMagnetization context item schema","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":{"$schema":"http://json-schema.org/draft-07/schema#","title":"extraData with materialHash schema","type":"object","required":["materialHash"],"properties":{"materialHash":{"type":"string"}}},"isEdited":{"type":"boolean"}}}],"discriminator":{"propertyName":"name"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"assignment unit schema","type":"object","required":["flowchartId","monitors","name","operand","postProcessors","preProcessors","results","type","value"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"assignment"},"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"},"scope":{"type":"string"},"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","required":["scope","name"],"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"}}}},"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"}]}}}],"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"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","required":["type","subtype"],"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","additionalProperties":true,"properties":{"searchText":{"type":"string"}}}}}},"required":["type","subtype","method"]}],"discriminator":{"propertyName":"subtype"}},"application":{"$schema":"http://json-schema.org/draft-07/schema#","title":"application schema","type":"object","required":["build","name","shortName","summary","version"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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"},"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","required":["commandTemplate","outFileName"],"properties":{"commandTemplate":{"description":"The command template of the application","type":"string"},"outFileName":{"description":"The output file name of the application","type":"string"}}}}},"isMultiMaterial":{"type":"boolean"},"isDraft":{"description":"Defines whether to store the results/properties extracted in this unit to properties collection","type":"boolean","default":false}}}},"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","required":["flowchartId","input","monitors","name","postProcessors","preProcessors","results","type","workflowId"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"map"},"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"},"workflowId":{"description":"Id of workflow to run inside map","type":"string"},"input":{"description":"Input information for map.","type":"object","required":["target"],"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"}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"reduce unit schema","type":"object","required":["flowchartId","input","mapFlowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"reduce"},"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"},"mapFlowchartId":{"description":"corresponding map unit flowchart ID","type":"string"},"input":{"description":"input information for reduce unit","type":"array","items":{"type":"object","required":["operation","arguments"],"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"}}}}}}},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit schema","type":"object","required":["flowchartId","monitors","name","postProcessors","preProcessors","results","type"],"properties":{"_id":{"description":"entity identity","type":"string"},"slug":{"description":"entity slug","type":"string"},"systemName":{"type":"string"},"schemaVersion":{"description":"entity's schema version. Used to distinct between different schemas.","type":"string","default":"2022.8.16"},"name":{"description":"entity name","type":"string"},"isDefault":{"description":"Identifies that entity is defaultable","type":"boolean","default":false},"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","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","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 name object schema","description":"A runtime item is a name of a pre-processor, post-processor, monitor, or result for a calculation. Can contain additional properties basename, filetype etc.","type":"object","required":["name"],"additionalProperties":true,"properties":{"name":{"description":"The name of this item. e.g. scf_accuracy","type":"string"}}}},"tags":{"description":"entity tags","type":"array","items":{"type":"string"}},"status":{"type":"string","description":"Status of the unit.","enum":["idle","active","warning","error","finished"]},"statusTrack":{"type":"array","items":{"type":"object","required":["trackedAt","status"],"properties":{"trackedAt":{"type":"number"},"status":{"type":"string"},"repetition":{"type":"number"}}}},"isDraft":{"type":"boolean"},"type":{"description":"type of the unit","type":"string","const":"subworkflow"},"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"}}}],"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"}},"description":{"description":"entity description","type":"string"},"descriptionObject":{"type":"object"}}}] \ No newline at end of file diff --git a/dist/js/scripts/compileTs.js b/dist/js/scripts/compileTs.js index f40ce603b..3592f507c 100644 --- a/dist/js/scripts/compileTs.js +++ b/dist/js/scripts/compileTs.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.default = compileTS; const fs_1 = __importDefault(require("fs")); const json_schema_to_typescript_1 = require("json-schema-to-typescript"); const schemaUtils_1 = require("../esse/schemaUtils"); @@ -77,4 +78,3 @@ async function compileTS(schemaPath, savePath) { await fs_1.default.promises.appendFile(savePath, `${compiledSchema} \n`, { flag: "a+" }); }); } -exports.default = compileTS; diff --git a/dist/js/scripts/setSchemaIds.js b/dist/js/scripts/setSchemaIds.js index d1a7bed63..0e898d3f5 100644 --- a/dist/js/scripts/setSchemaIds.js +++ b/dist/js/scripts/setSchemaIds.js @@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); +exports.default = setSchemaIds; const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); const filesystem_1 = require("../utils/filesystem"); @@ -27,4 +28,3 @@ function setSchemaIds(schemaDir) { } }); } -exports.default = setSchemaIds; diff --git a/dist/js/types.d.ts b/dist/js/types.d.ts index c0fb3b0d5..3b2972bee 100644 --- a/dist/js/types.d.ts +++ b/dist/js/types.d.ts @@ -52195,7 +52195,7 @@ export type PropertyType = "scalar" | "non-scalar" | "tensor" | "object"; * This interface was referenced by `PropertiesDirectoryEnumOptions`'s JSON-Schema * via the `definition` "ScalarPropertyEnum". */ -export type ScalarPropertyEnum = "fermi_energy" | "homo_energy" | "ionization_potential" | "lumo_energy" | "pressure" | "reaction_energy_barrier" | "surface_energy" | "thermal_correction_to_energy" | "thermal_correction_to_enthalpy" | "total_energy" | "total_force" | "valence_band_offset" | "zero_point_energy"; +export type ScalarPropertyEnum = "fermi_energy" | "formation_energy" | "homo_energy" | "ionization_potential" | "lumo_energy" | "pressure" | "reaction_energy_barrier" | "surface_energy" | "thermal_correction_to_energy" | "thermal_correction_to_enthalpy" | "total_energy" | "total_force" | "valence_band_offset" | "zero_point_energy"; /** * This interface was referenced by `PropertiesDirectoryEnumOptions`'s JSON-Schema * via the `definition` "NonScalarPropertyEnum". @@ -55908,6 +55908,10 @@ export interface PropertyHolderSchema { name: "fermi_energy"; units: ("kcal/mol" | "kJ/mol" | "eV" | "J/mol" | "hartree" | "cm-1" | "Ry" | "eV/atom") | "eV/A^2"; value: number; + } | { + name: "formation_energy"; + units: ("kcal/mol" | "kJ/mol" | "eV" | "J/mol" | "hartree" | "cm-1" | "Ry" | "eV/atom") | "eV/A^2"; + value: number; } | { name: "homo_energy"; units: ("kcal/mol" | "kJ/mol" | "eV" | "J/mol" | "hartree" | "cm-1" | "Ry" | "eV/atom") | "eV/A^2"; diff --git a/dist/js/types.js b/dist/js/types.js index 7b9e17410..8a9994e84 100644 --- a/dist/js/types.js +++ b/dist/js/types.js @@ -29,7 +29,7 @@ var Name; Name["VASPInputDataManager"] = "VASPInputDataManager"; Name["VASPNEBInputDataManager"] = "VASPNEBInputDataManager"; Name["NWChemInputDataManager"] = "NWChemInputDataManager"; -})(Name = exports.Name || (exports.Name = {})); +})(Name || (exports.Name = Name = {})); /** * This interface was referenced by `ContextProvidersDirectoryEnum`'s JSON-Schema * via the `definition` "ContextProviderNameEnum". @@ -61,7 +61,7 @@ var ContextProviderNameEnum; ContextProviderNameEnum["VASPInputDataManager"] = "VASPInputDataManager"; ContextProviderNameEnum["VASPNEBInputDataManager"] = "VASPNEBInputDataManager"; ContextProviderNameEnum["NWChemInputDataManager"] = "NWChemInputDataManager"; -})(ContextProviderNameEnum = exports.ContextProviderNameEnum || (exports.ContextProviderNameEnum = {})); +})(ContextProviderNameEnum || (exports.ContextProviderNameEnum = ContextProviderNameEnum = {})); /** * The type of the message to distinguish the direction of the message. */ @@ -69,7 +69,7 @@ var Type; (function (Type) { Type["fromIframeToHost"] = "from-iframe-to-host"; Type["fromHostToIframe"] = "from-host-to-iframe"; -})(Type = exports.Type || (exports.Type = {})); +})(Type || (exports.Type = Type = {})); /** * The action to be performed upon receiving the message. */ @@ -78,7 +78,7 @@ var Action; Action["setData"] = "set-data"; Action["getData"] = "get-data"; Action["info"] = "info"; -})(Action = exports.Action || (exports.Action = {})); +})(Action || (exports.Action = Action = {})); /** * This interface was referenced by `WorkflowSubworkflowConvergenceEnumOptions`'s JSON-Schema * via the `definition` "ConvergenceParameterNameEnum". @@ -88,4 +88,4 @@ var ConvergenceParameterNameEnum; ConvergenceParameterNameEnum["N_k"] = "N_k"; ConvergenceParameterNameEnum["N_k_nonuniform"] = "N_k_nonuniform"; ConvergenceParameterNameEnum["N_k_nonuniform_2D"] = "N_k_nonuniform_2D"; -})(ConvergenceParameterNameEnum = exports.ConvergenceParameterNameEnum || (exports.ConvergenceParameterNameEnum = {})); +})(ConvergenceParameterNameEnum || (exports.ConvergenceParameterNameEnum = ConvergenceParameterNameEnum = {})); diff --git a/dist/js/utils/ajv.js b/dist/js/utils/ajv.js index 708e063e9..1dc2ab185 100644 --- a/dist/js/utils/ajv.js +++ b/dist/js/utils/ajv.js @@ -3,7 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.validateAndClean = exports.validate = exports.getValidator = void 0; +exports.getValidator = getValidator; +exports.validate = validate; +exports.validateAndClean = validateAndClean; const ajv_1 = __importDefault(require("ajv")); const ajv_formats_1 = __importDefault(require("ajv-formats")); const schemaUtils_1 = require("../esse/schemaUtils"); @@ -23,7 +25,7 @@ function addAdditionalPropertiesToSchema(schema, additionalProperties = false) { }); } const ajvConfig = { - strict: false, + strict: false, // TODO: adjust schemas and enable strict mode useDefaults: true, /** * discriminator fixes default values in oneOf @@ -80,7 +82,6 @@ function getValidator(jsonSchema, { clean, coerceTypes, useDefaults = true, }) { } return validate; } -exports.getValidator = getValidator; /** * Validates a given example against the schema. * @param example example to validate. @@ -95,7 +96,6 @@ function validate(data, jsonSchema) { errors: validator.errors, }; } -exports.validate = validate; /** * Validates and clean a given example against the schema * @param example example to validate. @@ -110,4 +110,3 @@ function validateAndClean(data, jsonSchema, { coerceTypes = false, useDefaults = errors: validator.errors, }; } -exports.validateAndClean = validateAndClean; diff --git a/dist/js/utils/common.js b/dist/js/utils/common.js index 1e72a4688..dc93d5020 100644 --- a/dist/js/utils/common.js +++ b/dist/js/utils/common.js @@ -1,10 +1,10 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.safeParseJSON = exports.isInstanceOf = void 0; +exports.isInstanceOf = isInstanceOf; +exports.safeParseJSON = safeParseJSON; function isInstanceOf(object, type) { return Object.prototype.toString.call(object).slice(8, -1) === type; } -exports.isInstanceOf = isInstanceOf; /** * Makes sure that text representing arrays is parsed into Arrays. */ @@ -12,4 +12,3 @@ function safeParseJSON(string) { const obj = JSON.parse(string); return string[0] === "[" ? Object.keys(obj).map((key) => obj[key]) : obj; } -exports.safeParseJSON = safeParseJSON; diff --git a/dist/js/utils/filesystem.js b/dist/js/utils/filesystem.js index 7deb2c7e2..43646e554 100644 --- a/dist/js/utils/filesystem.js +++ b/dist/js/utils/filesystem.js @@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.walkDirSync = exports.walkDir = void 0; +exports.walkDir = walkDir; +exports.walkDirSync = walkDirSync; /* eslint-disable no-await-in-loop */ /* eslint-disable no-restricted-syntax */ const fs_1 = __importDefault(require("fs")); @@ -21,7 +22,6 @@ async function walkDir(dir, callback) { } } } -exports.walkDir = walkDir; function walkDirSync(dir, callback) { const subDirs = fs_1.default.readdirSync(dir); for (const subDir of subDirs) { @@ -35,4 +35,3 @@ function walkDirSync(dir, callback) { } } } -exports.walkDirSync = walkDirSync; diff --git a/manifest/properties.yaml b/manifest/properties.yaml index 2066b424b..037f68d5b 100644 --- a/manifest/properties.yaml +++ b/manifest/properties.yaml @@ -47,6 +47,12 @@ lumo_energy: schemaId: properties-directory/scalar/lumo-energy isResult: true +formation_energy: + defaults: + units: eV/atom + schemaId: properties-directory/scalar/formation-energy + isResult: true + total_force: defaults: units: eV/angstrom diff --git a/schema/properties_directory/enum_options.json b/schema/properties_directory/enum_options.json index c2c372107..af6f7cc53 100644 --- a/schema/properties_directory/enum_options.json +++ b/schema/properties_directory/enum_options.json @@ -22,6 +22,7 @@ "type": "string", "enum": [ "fermi_energy", + "formation_energy", "homo_energy", "ionization_potential", "lumo_energy", @@ -91,3 +92,4 @@ } } } + diff --git a/schema/properties_directory/scalar/formation_energy.json b/schema/properties_directory/scalar/formation_energy.json index 419bb644d..dfc864363 100644 --- a/schema/properties_directory/scalar/formation_energy.json +++ b/schema/properties_directory/scalar/formation_energy.json @@ -16,6 +16,7 @@ } }, "required": [ - "name" + "name", + "units" ] } diff --git a/schema/property/holder.json b/schema/property/holder.json index 7029a7f25..5fbffc17b 100644 --- a/schema/property/holder.json +++ b/schema/property/holder.json @@ -48,6 +48,9 @@ { "$ref": "../properties_directory/scalar/fermi_energy.json" }, + { + "$ref": "../properties_directory/scalar/formation_energy.json" + }, { "$ref": "../properties_directory/scalar/homo_energy.json" }, @@ -193,3 +196,4 @@ "exabyteId" ] } + diff --git a/src/py/mat3ra/esse/data/properties.py b/src/py/mat3ra/esse/data/properties.py index 42f258830..2d05018f1 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},"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},"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},"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","fermi_energy","homo_energy","lumo_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","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},"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},"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},"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","fermi_energy","homo_energy","lumo_energy","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","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 diff --git a/src/py/mat3ra/esse/data/schemas.py b/src/py/mat3ra/esse/data/schemas.py index dc75710e4..a3d0163d1 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."}},"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/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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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/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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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/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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"ScalarPropertyEnum":{"type":"string","enum":["fermi_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_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"]},"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/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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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/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"]},{"$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/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/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":"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":"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":"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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"},"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["exabyteId","hash"]},{"$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/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","properties":{"status":{"type":"string"},"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"}},"required":["materialHash"]},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"discriminator":{"propertyName":"name"}},{"$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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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/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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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."}},"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/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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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/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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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/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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"scaledHash":{"description":"Hash string for a scaled structure with lattice vector a set to 1 (eg. for materials under pressure).","type":"string"},"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"]},"ScalarPropertyEnum":{"type":"string","enum":["fermi_energy","formation_energy","homo_energy","ionization_potential","lumo_energy","pressure","reaction_energy_barrier","surface_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"]},"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/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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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/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/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/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":"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":"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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"},"hash":{"description":"Hash string which is calculated based on the meaningful fields of the entity. Used to identify equal entities.","type":"string"}},"required":["exabyteId","hash"]},{"$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/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","properties":{"status":{"type":"string"},"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"}},"required":["materialHash"]},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"discriminator":{"propertyName":"name"}},{"$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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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/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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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","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."}},"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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}},{"$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"}},"required":["materialHash"]}]}}}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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"]}]}],"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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","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 schema","type":"object","properties":{"status":{"type":"string"},"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"},"type":{"description":"type of the unit","type":"string"},"name":{"description":"name of the unit. e.g. pw_scf","type":"string"},"status":{"description":"Status of the unit.","type":"string","enum":["idle","active","warning","error","finished"]},"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"}},"required":["type","flowchartId"]}]},{"$schema":"http://json-schema.org/draft-07/schema#","title":"subworkflow unit mixin schema","type":"object","properties":{"type":{"const":"subworkflow"}}}]}],"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/job/__init__.py b/src/py/mat3ra/esse/models/job/__init__.py index 6fd2ba7a1..63f3875d3 100644 --- a/src/py/mat3ra/esse/models/job/__init__.py +++ b/src/py/mat3ra/esse/models/job/__init__.py @@ -1157,7 +1157,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name579(Enum): +class Name580(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 0083fba3b..f0f763bd5 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 Name586(Enum): +class Name587(Enum): density = "density" -class Units263(Enum): +class Units265(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units263] = None + units: Optional[Units265] = None value: float -class Units264(Enum): +class Units266(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units264] = None + units: Optional[Units266] = None value: float -class Name587(Enum): +class Name588(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name588(Enum): +class Name589(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name589(Enum): +class Name590(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name590(Enum): +class Name591(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name591(Enum): +class Name592(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name592(Enum): +class Name593(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name592 + name: Name593 """ 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 57a767679..e0d5357b6 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 Name594(Enum): +class Name595(Enum): density = "density" -class Units266(Enum): +class Units268(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units266] = None + units: Optional[Units268] = None value: float -class Units267(Enum): +class Units269(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units267] = None + units: Optional[Units269] = None value: float -class Name595(Enum): +class Name596(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name596(Enum): +class Name597(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name597(Enum): +class Name598(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name598(Enum): +class Name599(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name599(Enum): +class Name600(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name600(Enum): +class Name601(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name600 + name: Name601 """ 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/interstitial.py b/src/py/mat3ra/esse/models/materials_category/defective_structures/zero_dimensional/point_defect/interstitial.py index f6b261848..99cb2f960 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 Name557(Enum): +class Name558(Enum): density = "density" -class Units249(Enum): +class Units251(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units249] = None + units: Optional[Units251] = None value: float -class Units250(Enum): +class Units252(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units250] = None + units: Optional[Units252] = None value: float -class Name558(Enum): +class Name559(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name559(Enum): +class Name560(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name560(Enum): +class Name561(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name561(Enum): +class Name562(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name562(Enum): +class Name563(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name563(Enum): +class Name564(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name563 + name: Name564 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -812,44 +812,44 @@ class LatticeSchema57(BaseModel): ) -class Name564(Enum): +class Name565(Enum): volume = "volume" -class Units251(Enum): +class Units253(Enum): angstrom_3 = "angstrom^3" class VolumeSchema58(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units251] = None + units: Optional[Units253] = None value: float -class Name565(Enum): +class Name566(Enum): density = "density" -class Units252(Enum): +class Units254(Enum): g_cm_3 = "g/cm^3" class DensitySchema59(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units252] = None + units: Optional[Units254] = None value: float -class Units253(Enum): +class Units255(Enum): angstrom = "angstrom" class ScalarSchema73(BaseModel): - units: Optional[Units253] = None + units: Optional[Units255] = None value: float -class Name566(Enum): +class Name567(Enum): symmetry = "symmetry" @@ -869,7 +869,7 @@ class SymmetrySchema58(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name567(Enum): +class Name568(Enum): elemental_ratio = "elemental_ratio" @@ -882,7 +882,7 @@ class ElementalRatio59(BaseModel): """ -class Name568(Enum): +class Name569(Enum): p_norm = "p-norm" @@ -895,7 +895,7 @@ class PNorm58(BaseModel): value: float -class Name569(Enum): +class Name570(Enum): inchi = "inchi" @@ -904,7 +904,7 @@ class InChIRepresentationSchema59(BaseModel): value: str -class Name570(Enum): +class Name571(Enum): inchi_key = "inchi_key" @@ -964,14 +964,14 @@ class DatabaseSourceSchema58(BaseModel): """ -class Name571(Enum): +class Name572(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema58(BaseModel): - name: Name571 + name: Name572 """ 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 b843dbf57..d57bd5ec2 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 Name755(Enum): +class Name756(Enum): density = "density" -class Units327(Enum): +class Units329(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units327] = None + units: Optional[Units329] = None value: float -class Units328(Enum): +class Units330(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units328] = None + units: Optional[Units330] = None value: float -class Name756(Enum): +class Name757(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name757(Enum): +class Name758(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name758(Enum): +class Name759(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name759(Enum): +class Name760(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name760(Enum): +class Name761(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name761(Enum): +class Name762(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name761 + name: Name762 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -812,44 +812,44 @@ class LatticeSchema78(BaseModel): ) -class Name762(Enum): +class Name763(Enum): volume = "volume" -class Units329(Enum): +class Units331(Enum): angstrom_3 = "angstrom^3" class VolumeSchema78(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units329] = None + units: Optional[Units331] = None value: float -class Name763(Enum): +class Name764(Enum): density = "density" -class Units330(Enum): +class Units332(Enum): g_cm_3 = "g/cm^3" class DensitySchema79(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units330] = None + units: Optional[Units332] = None value: float -class Units331(Enum): +class Units333(Enum): angstrom = "angstrom" class ScalarSchema94(BaseModel): - units: Optional[Units331] = None + units: Optional[Units333] = None value: float -class Name764(Enum): +class Name765(Enum): symmetry = "symmetry" @@ -869,7 +869,7 @@ class SymmetrySchema78(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name765(Enum): +class Name766(Enum): elemental_ratio = "elemental_ratio" @@ -882,7 +882,7 @@ class ElementalRatio79(BaseModel): """ -class Name766(Enum): +class Name767(Enum): p_norm = "p-norm" @@ -895,7 +895,7 @@ class PNorm79(BaseModel): value: float -class Name767(Enum): +class Name768(Enum): inchi = "inchi" @@ -904,7 +904,7 @@ class InChIRepresentationSchema79(BaseModel): value: str -class Name768(Enum): +class Name769(Enum): inchi_key = "inchi_key" @@ -964,14 +964,14 @@ class DatabaseSourceSchema78(BaseModel): """ -class Name769(Enum): +class Name770(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema78(BaseModel): - name: Name769 + name: Name770 """ 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 9735b1e2f..6db2811dc 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 Name804(Enum): +class Name805(Enum): density = "density" -class Units347(Enum): +class Units349(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units347] = None + units: Optional[Units349] = None value: float -class Units348(Enum): +class Units350(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units348] = None + units: Optional[Units350] = None value: float -class Name805(Enum): +class Name806(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name806(Enum): +class Name807(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name807(Enum): +class Name808(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name808(Enum): +class Name809(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name809(Enum): +class Name810(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name810(Enum): +class Name811(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name810 + 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/pristine_structures/three_dimensional/ideal_crystal.py b/src/py/mat3ra/esse/models/materials_category/pristine_structures/three_dimensional/ideal_crystal.py index ac533e173..7790c96b9 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 Name547(Enum): +class Name548(Enum): density = "density" -class Units246(Enum): +class Units248(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units246] = None + units: Optional[Units248] = None value: float -class Units247(Enum): +class Units249(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units247] = None + units: Optional[Units249] = None value: float -class Name548(Enum): +class Name549(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name549(Enum): +class Name550(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name550(Enum): +class Name551(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name551(Enum): +class Name552(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name552(Enum): +class Name553(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name553(Enum): +class Name554(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name553 + name: Name554 """ 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 882207057..9f93bff31 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 Name609(Enum): +class Name610(Enum): density = "density" -class Units269(Enum): +class Units271(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units269] = None + units: Optional[Units271] = None value: float -class Units270(Enum): +class Units272(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units270] = None + units: Optional[Units272] = None value: float -class Name610(Enum): +class Name611(Enum): symmetry = "symmetry" @@ -475,7 +475,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name611(Enum): +class Name612(Enum): elemental_ratio = "elemental_ratio" @@ -488,7 +488,7 @@ class ElementalRatio(BaseModel): """ -class Name612(Enum): +class Name613(Enum): p_norm = "p-norm" @@ -501,7 +501,7 @@ class PNorm(BaseModel): value: float -class Name613(Enum): +class Name614(Enum): inchi = "inchi" @@ -510,7 +510,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name614(Enum): +class Name615(Enum): inchi_key = "inchi_key" @@ -597,7 +597,7 @@ class FileSourceSchema(BaseModel): """ -class Name615(Enum): +class Name616(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -610,7 +610,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name615 + name: Name616 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -996,44 +996,44 @@ class LatticeSchema62(BaseModel): ) -class Name616(Enum): +class Name617(Enum): volume = "volume" -class Units271(Enum): +class Units273(Enum): angstrom_3 = "angstrom^3" class VolumeSchema62(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units271] = None + units: Optional[Units273] = None value: float -class Name617(Enum): +class Name618(Enum): density = "density" -class Units272(Enum): +class Units274(Enum): g_cm_3 = "g/cm^3" class DensitySchema63(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units272] = None + units: Optional[Units274] = None value: float -class Units273(Enum): +class Units275(Enum): angstrom = "angstrom" class ScalarSchema77(BaseModel): - units: Optional[Units273] = None + units: Optional[Units275] = None value: float -class Name618(Enum): +class Name619(Enum): symmetry = "symmetry" @@ -1053,7 +1053,7 @@ class SymmetrySchema62(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name619(Enum): +class Name620(Enum): elemental_ratio = "elemental_ratio" @@ -1066,7 +1066,7 @@ class ElementalRatio63(BaseModel): """ -class Name620(Enum): +class Name621(Enum): p_norm = "p-norm" @@ -1079,7 +1079,7 @@ class PNorm62(BaseModel): value: float -class Name621(Enum): +class Name622(Enum): inchi = "inchi" @@ -1088,7 +1088,7 @@ class InChIRepresentationSchema63(BaseModel): value: str -class Name622(Enum): +class Name623(Enum): inchi_key = "inchi_key" @@ -1148,14 +1148,14 @@ class DatabaseSourceSchema62(BaseModel): """ -class Name623(Enum): +class Name624(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema62(BaseModel): - name: Name623 + name: Name624 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1489,44 +1489,44 @@ class LatticeSchema63(BaseModel): ) -class Name624(Enum): +class Name625(Enum): volume = "volume" -class Units274(Enum): +class Units276(Enum): angstrom_3 = "angstrom^3" class VolumeSchema63(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units274] = None + units: Optional[Units276] = None value: float -class Name625(Enum): +class Name626(Enum): density = "density" -class Units275(Enum): +class Units277(Enum): g_cm_3 = "g/cm^3" class DensitySchema64(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units275] = None + units: Optional[Units277] = None value: float -class Units276(Enum): +class Units278(Enum): angstrom = "angstrom" class ScalarSchema78(BaseModel): - units: Optional[Units276] = None + units: Optional[Units278] = None value: float -class Name626(Enum): +class Name627(Enum): symmetry = "symmetry" @@ -1546,7 +1546,7 @@ class SymmetrySchema63(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name627(Enum): +class Name628(Enum): elemental_ratio = "elemental_ratio" @@ -1559,7 +1559,7 @@ class ElementalRatio64(BaseModel): """ -class Name628(Enum): +class Name629(Enum): p_norm = "p-norm" @@ -1572,7 +1572,7 @@ class PNorm63(BaseModel): value: float -class Name629(Enum): +class Name630(Enum): inchi = "inchi" @@ -1581,7 +1581,7 @@ class InChIRepresentationSchema64(BaseModel): value: str -class Name630(Enum): +class Name631(Enum): inchi_key = "inchi_key" @@ -1641,14 +1641,14 @@ class DatabaseSourceSchema63(BaseModel): """ -class Name631(Enum): +class Name632(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema63(BaseModel): - name: Name631 + name: Name632 """ 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 e0ce6749c..f273099ae 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 Name633(Enum): +class Name634(Enum): density = "density" -class Units278(Enum): +class Units280(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units278] = None + units: Optional[Units280] = None value: float -class Units279(Enum): +class Units281(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units279] = None + units: Optional[Units281] = None value: float -class Name634(Enum): +class Name635(Enum): symmetry = "symmetry" @@ -475,7 +475,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name635(Enum): +class Name636(Enum): elemental_ratio = "elemental_ratio" @@ -488,7 +488,7 @@ class ElementalRatio(BaseModel): """ -class Name636(Enum): +class Name637(Enum): p_norm = "p-norm" @@ -501,7 +501,7 @@ class PNorm(BaseModel): value: float -class Name637(Enum): +class Name638(Enum): inchi = "inchi" @@ -510,7 +510,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name638(Enum): +class Name639(Enum): inchi_key = "inchi_key" @@ -597,7 +597,7 @@ class FileSourceSchema(BaseModel): """ -class Name639(Enum): +class Name640(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -610,7 +610,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name639 + name: Name640 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -996,44 +996,44 @@ class LatticeSchema65(BaseModel): ) -class Name640(Enum): +class Name641(Enum): volume = "volume" -class Units280(Enum): +class Units282(Enum): angstrom_3 = "angstrom^3" class VolumeSchema65(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units280] = None + units: Optional[Units282] = None value: float -class Name641(Enum): +class Name642(Enum): density = "density" -class Units281(Enum): +class Units283(Enum): g_cm_3 = "g/cm^3" class DensitySchema66(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units281] = None + units: Optional[Units283] = None value: float -class Units282(Enum): +class Units284(Enum): angstrom = "angstrom" class ScalarSchema80(BaseModel): - units: Optional[Units282] = None + units: Optional[Units284] = None value: float -class Name642(Enum): +class Name643(Enum): symmetry = "symmetry" @@ -1053,7 +1053,7 @@ class SymmetrySchema65(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name643(Enum): +class Name644(Enum): elemental_ratio = "elemental_ratio" @@ -1066,7 +1066,7 @@ class ElementalRatio66(BaseModel): """ -class Name644(Enum): +class Name645(Enum): p_norm = "p-norm" @@ -1079,7 +1079,7 @@ class PNorm65(BaseModel): value: float -class Name645(Enum): +class Name646(Enum): inchi = "inchi" @@ -1088,7 +1088,7 @@ class InChIRepresentationSchema66(BaseModel): value: str -class Name646(Enum): +class Name647(Enum): inchi_key = "inchi_key" @@ -1148,14 +1148,14 @@ class DatabaseSourceSchema65(BaseModel): """ -class Name647(Enum): +class Name648(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema65(BaseModel): - name: Name647 + name: Name648 """ 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 4a8cfa9c4..61a1f711e 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 Name681(Enum): +class Name682(Enum): density = "density" -class Units299(Enum): +class Units301(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units299] = None + units: Optional[Units301] = None value: float -class Units300(Enum): +class Units302(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units300] = None + units: Optional[Units302] = None value: float -class Name682(Enum): +class Name683(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name683(Enum): +class Name684(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name684(Enum): +class Name685(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name685(Enum): +class Name686(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name686(Enum): +class Name687(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name687(Enum): +class Name688(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name687 + name: Name688 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -975,44 +975,44 @@ class LatticeSchema69(BaseModel): ) -class Name688(Enum): +class Name689(Enum): volume = "volume" -class Units301(Enum): +class Units303(Enum): angstrom_3 = "angstrom^3" class VolumeSchema69(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units301] = None + units: Optional[Units303] = None value: float -class Name689(Enum): +class Name690(Enum): density = "density" -class Units302(Enum): +class Units304(Enum): g_cm_3 = "g/cm^3" class DensitySchema70(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units302] = None + units: Optional[Units304] = None value: float -class Units303(Enum): +class Units305(Enum): angstrom = "angstrom" class ScalarSchema85(BaseModel): - units: Optional[Units303] = None + units: Optional[Units305] = None value: float -class Name690(Enum): +class Name691(Enum): symmetry = "symmetry" @@ -1032,7 +1032,7 @@ class SymmetrySchema69(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name691(Enum): +class Name692(Enum): elemental_ratio = "elemental_ratio" @@ -1045,7 +1045,7 @@ class ElementalRatio70(BaseModel): """ -class Name692(Enum): +class Name693(Enum): p_norm = "p-norm" @@ -1058,7 +1058,7 @@ class PNorm70(BaseModel): value: float -class Name693(Enum): +class Name694(Enum): inchi = "inchi" @@ -1067,7 +1067,7 @@ class InChIRepresentationSchema70(BaseModel): value: str -class Name694(Enum): +class Name695(Enum): inchi_key = "inchi_key" @@ -1127,14 +1127,14 @@ class DatabaseSourceSchema69(BaseModel): """ -class Name695(Enum): +class Name696(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema69(BaseModel): - name: Name695 + name: Name696 """ 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 deb8a70b8..d5cc222f5 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 Name721(Enum): +class Name722(Enum): density = "density" -class Units314(Enum): +class Units316(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units314] = None + units: Optional[Units316] = None value: float -class Units315(Enum): +class Units317(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units315] = None + units: Optional[Units317] = None value: float -class Name722(Enum): +class Name723(Enum): symmetry = "symmetry" @@ -470,7 +470,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name723(Enum): +class Name724(Enum): elemental_ratio = "elemental_ratio" @@ -483,7 +483,7 @@ class ElementalRatio(BaseModel): """ -class Name724(Enum): +class Name725(Enum): p_norm = "p-norm" @@ -496,7 +496,7 @@ class PNorm(BaseModel): value: float -class Name725(Enum): +class Name726(Enum): inchi = "inchi" @@ -505,7 +505,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name726(Enum): +class Name727(Enum): inchi_key = "inchi_key" @@ -592,7 +592,7 @@ class FileSourceSchema(BaseModel): """ -class Name727(Enum): +class Name728(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -605,7 +605,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name727 + name: Name728 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -983,44 +983,44 @@ class LatticeSchema74(BaseModel): ) -class Name728(Enum): +class Name729(Enum): volume = "volume" -class Units316(Enum): +class Units318(Enum): angstrom_3 = "angstrom^3" class VolumeSchema74(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units316] = None + units: Optional[Units318] = None value: float -class Name729(Enum): +class Name730(Enum): density = "density" -class Units317(Enum): +class Units319(Enum): g_cm_3 = "g/cm^3" class DensitySchema75(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units317] = None + units: Optional[Units319] = None value: float -class Units318(Enum): +class Units320(Enum): angstrom = "angstrom" class ScalarSchema90(BaseModel): - units: Optional[Units318] = None + units: Optional[Units320] = None value: float -class Name730(Enum): +class Name731(Enum): symmetry = "symmetry" @@ -1040,7 +1040,7 @@ class SymmetrySchema74(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name731(Enum): +class Name732(Enum): elemental_ratio = "elemental_ratio" @@ -1053,7 +1053,7 @@ class ElementalRatio75(BaseModel): """ -class Name732(Enum): +class Name733(Enum): p_norm = "p-norm" @@ -1066,7 +1066,7 @@ class PNorm75(BaseModel): value: float -class Name733(Enum): +class Name734(Enum): inchi = "inchi" @@ -1075,7 +1075,7 @@ class InChIRepresentationSchema75(BaseModel): value: str -class Name734(Enum): +class Name735(Enum): inchi_key = "inchi_key" @@ -1135,14 +1135,14 @@ class DatabaseSourceSchema74(BaseModel): """ -class Name735(Enum): +class Name736(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema74(BaseModel): - name: Name735 + name: Name736 """ 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 a495c34a2..174ba4988 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 Name662(Enum): +class Name663(Enum): density = "density" -class Units291(Enum): +class Units293(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units291] = None + units: Optional[Units293] = None value: float -class Units292(Enum): +class Units294(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units292] = None + units: Optional[Units294] = None value: float -class Name663(Enum): +class Name664(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name664(Enum): +class Name665(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name665(Enum): +class Name666(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name666(Enum): +class Name667(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name667(Enum): +class Name668(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name668(Enum): +class Name669(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name668 + name: Name669 """ 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 d57d97a60..49aff9952 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 Name823(Enum): +class Name824(Enum): density = "density" -class Units357(Enum): +class Units359(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units357] = None + units: Optional[Units359] = None value: float -class Units358(Enum): +class Units360(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units358] = None + units: Optional[Units360] = None value: float -class Name824(Enum): +class Name825(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name825(Enum): +class Name826(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name826(Enum): +class Name827(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name827(Enum): +class Name828(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name828(Enum): +class Name829(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name829(Enum): +class Name830(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name829 + name: Name830 """ 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 167cbb289..f838d0094 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 Name812(Enum): +class Name813(Enum): density = "density" -class Units350(Enum): +class Units352(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units350] = None + units: Optional[Units352] = None value: float -class Units351(Enum): +class Units353(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units351] = None + units: Optional[Units353] = None value: float -class Name813(Enum): +class Name814(Enum): symmetry = "symmetry" @@ -334,7 +334,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name814(Enum): +class Name815(Enum): elemental_ratio = "elemental_ratio" @@ -347,7 +347,7 @@ class ElementalRatio(BaseModel): """ -class Name815(Enum): +class Name816(Enum): p_norm = "p-norm" @@ -360,7 +360,7 @@ class PNorm(BaseModel): value: float -class Name816(Enum): +class Name817(Enum): inchi = "inchi" @@ -369,7 +369,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name817(Enum): +class Name818(Enum): inchi_key = "inchi_key" @@ -456,7 +456,7 @@ class FileSourceSchema(BaseModel): """ -class Name818(Enum): +class Name819(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -469,7 +469,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name818 + name: Name819 """ 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 1562c6e2d..571cb72da 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 Name738(Enum): +class Name739(Enum): density = "density" -class Units320(Enum): +class Units322(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units320] = None + units: Optional[Units322] = None value: float -class Units321(Enum): +class Units323(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units321] = None + units: Optional[Units323] = None value: float -class Name739(Enum): +class Name740(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name740(Enum): +class Name741(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name741(Enum): +class Name742(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name742(Enum): +class Name743(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name743(Enum): +class Name744(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name744(Enum): +class Name745(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name744 + name: Name745 """ 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 3b09046ff..3ee576bb0 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 Name746(Enum): +class Name747(Enum): density = "density" -class Units323(Enum): +class Units325(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units323] = None + units: Optional[Units325] = None value: float -class Units324(Enum): +class Units326(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units324] = None + units: Optional[Units326] = None value: float -class Name747(Enum): +class Name748(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name748(Enum): +class Name749(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name749(Enum): +class Name750(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name750(Enum): +class Name751(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name751(Enum): +class Name752(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name752(Enum): +class Name753(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name752 + name: Name753 """ 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 09e386b2d..5a0f6acde 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 Name773(Enum): +class Name774(Enum): density = "density" -class Units333(Enum): +class Units335(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units333] = None + units: Optional[Units335] = None value: float -class Units334(Enum): +class Units336(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units334] = None + units: Optional[Units336] = None value: float -class Name774(Enum): +class Name775(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name775(Enum): +class Name776(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name776(Enum): +class Name777(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name777(Enum): +class Name778(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name778(Enum): +class Name779(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name779(Enum): +class Name780(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name779 + name: Name780 """ 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 100d3f2f8..a942eaaad 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 Name697(Enum): +class Name698(Enum): density = "density" -class Units305(Enum): +class Units307(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units305] = None + units: Optional[Units307] = None value: float -class Units306(Enum): +class Units308(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units306] = None + units: Optional[Units308] = None value: float -class Name698(Enum): +class Name699(Enum): symmetry = "symmetry" @@ -462,7 +462,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name699(Enum): +class Name700(Enum): elemental_ratio = "elemental_ratio" @@ -475,7 +475,7 @@ class ElementalRatio(BaseModel): """ -class Name700(Enum): +class Name701(Enum): p_norm = "p-norm" @@ -488,7 +488,7 @@ class PNorm(BaseModel): value: float -class Name701(Enum): +class Name702(Enum): inchi = "inchi" @@ -497,7 +497,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name702(Enum): +class Name703(Enum): inchi_key = "inchi_key" @@ -584,7 +584,7 @@ class FileSourceSchema(BaseModel): """ -class Name703(Enum): +class Name704(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -597,7 +597,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name703 + name: Name704 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -975,44 +975,44 @@ class LatticeSchema71(BaseModel): ) -class Name704(Enum): +class Name705(Enum): volume = "volume" -class Units307(Enum): +class Units309(Enum): angstrom_3 = "angstrom^3" class VolumeSchema71(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units307] = None + units: Optional[Units309] = None value: float -class Name705(Enum): +class Name706(Enum): density = "density" -class Units308(Enum): +class Units310(Enum): g_cm_3 = "g/cm^3" class DensitySchema72(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units308] = None + units: Optional[Units310] = None value: float -class Units309(Enum): +class Units311(Enum): angstrom = "angstrom" class ScalarSchema87(BaseModel): - units: Optional[Units309] = None + units: Optional[Units311] = None value: float -class Name706(Enum): +class Name707(Enum): symmetry = "symmetry" @@ -1032,7 +1032,7 @@ class SymmetrySchema71(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name707(Enum): +class Name708(Enum): elemental_ratio = "elemental_ratio" @@ -1045,7 +1045,7 @@ class ElementalRatio72(BaseModel): """ -class Name708(Enum): +class Name709(Enum): p_norm = "p-norm" @@ -1058,7 +1058,7 @@ class PNorm72(BaseModel): value: float -class Name709(Enum): +class Name710(Enum): inchi = "inchi" @@ -1067,7 +1067,7 @@ class InChIRepresentationSchema72(BaseModel): value: str -class Name710(Enum): +class Name711(Enum): inchi_key = "inchi_key" @@ -1127,14 +1127,14 @@ class DatabaseSourceSchema71(BaseModel): """ -class Name711(Enum): +class Name712(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema71(BaseModel): - name: Name711 + name: Name712 """ Name of the consistency check that is performed, which is listed in an enum. """ @@ -1468,44 +1468,44 @@ class LatticeSchema72(BaseModel): ) -class Name712(Enum): +class Name713(Enum): volume = "volume" -class Units310(Enum): +class Units312(Enum): angstrom_3 = "angstrom^3" class VolumeSchema72(BaseModel): name: Literal["0#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units310] = None + units: Optional[Units312] = None value: float -class Name713(Enum): +class Name714(Enum): density = "density" -class Units311(Enum): +class Units313(Enum): g_cm_3 = "g/cm^3" class DensitySchema73(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units311] = None + units: Optional[Units313] = None value: float -class Units312(Enum): +class Units314(Enum): angstrom = "angstrom" class ScalarSchema88(BaseModel): - units: Optional[Units312] = None + units: Optional[Units314] = None value: float -class Name714(Enum): +class Name715(Enum): symmetry = "symmetry" @@ -1525,7 +1525,7 @@ class SymmetrySchema72(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name715(Enum): +class Name716(Enum): elemental_ratio = "elemental_ratio" @@ -1538,7 +1538,7 @@ class ElementalRatio73(BaseModel): """ -class Name716(Enum): +class Name717(Enum): p_norm = "p-norm" @@ -1551,7 +1551,7 @@ class PNorm73(BaseModel): value: float -class Name717(Enum): +class Name718(Enum): inchi = "inchi" @@ -1560,7 +1560,7 @@ class InChIRepresentationSchema73(BaseModel): value: str -class Name718(Enum): +class Name719(Enum): inchi_key = "inchi_key" @@ -1620,14 +1620,14 @@ class DatabaseSourceSchema72(BaseModel): """ -class Name719(Enum): +class Name720(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" class MaterialConsistencyCheckSchema72(BaseModel): - name: Name719 + name: Name720 """ 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 0c92ff02e..1a2c4dcad 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 Name652(Enum): +class Name653(Enum): density = "density" -class Units284(Enum): +class Units286(Enum): g_cm_3 = "g/cm^3" class DensitySchema(BaseModel): name: Literal["1#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units284] = None + units: Optional[Units286] = None value: float -class Units285(Enum): +class Units287(Enum): angstrom = "angstrom" class ScalarSchema(BaseModel): - units: Optional[Units285] = None + units: Optional[Units287] = None value: float -class Name653(Enum): +class Name654(Enum): symmetry = "symmetry" @@ -328,7 +328,7 @@ class SymmetrySchema(BaseModel): name: Literal["2#-datamodel-code-generator-#-object-#-special-#"] -class Name654(Enum): +class Name655(Enum): elemental_ratio = "elemental_ratio" @@ -341,7 +341,7 @@ class ElementalRatio(BaseModel): """ -class Name655(Enum): +class Name656(Enum): p_norm = "p-norm" @@ -354,7 +354,7 @@ class PNorm(BaseModel): value: float -class Name656(Enum): +class Name657(Enum): inchi = "inchi" @@ -363,7 +363,7 @@ class InChIRepresentationSchema(BaseModel): value: str -class Name657(Enum): +class Name658(Enum): inchi_key = "inchi_key" @@ -450,7 +450,7 @@ class FileSourceSchema(BaseModel): """ -class Name658(Enum): +class Name659(Enum): default = "default" atomsTooClose = "atomsTooClose" atomsOverlap = "atomsOverlap" @@ -463,7 +463,7 @@ class Severity(Enum): class MaterialConsistencyCheckSchema(BaseModel): - name: Name658 + name: Name659 """ Name of the consistency check that is performed, which is listed in an enum. """ 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 e7a55db9d..acdee6822 100644 --- a/src/py/mat3ra/esse/models/properties_directory/enum_options.py +++ b/src/py/mat3ra/esse/models/properties_directory/enum_options.py @@ -29,6 +29,7 @@ class PropertyType(Enum): class ScalarPropertyEnum(Enum): fermi_energy = "fermi_energy" + formation_energy = "formation_energy" homo_energy = "homo_energy" ionization_potential = "ionization_potential" lumo_energy = "lumo_energy" 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 6c3fa00bd..c656a41ee 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 @@ -34,7 +34,7 @@ class Label27(Enum): frequency = "frequency" -class Units287(Enum): +class Units289(Enum): cm_1 = "cm-1" THz = "THz" meV = "meV" @@ -45,7 +45,7 @@ class AxisSchema30(BaseModel): """ label of an axis object """ - units: Optional[Units287] = None + units: Optional[Units289] = None """ units for an axis """ 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 0c4ac0892..5c3aafed0 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 @@ -35,7 +35,7 @@ class Label29(Enum): Phonon_DOS = "Phonon DOS" -class Units289(Enum): +class Units291(Enum): states_cm_1 = "states/cm-1" states_THz = "states/THz" states_meV = "states/meV" @@ -46,7 +46,7 @@ class AxisSchema32(BaseModel): """ label of an axis object """ - units: Optional[Units289] = None + units: Optional[Units291] = None """ units for an axis """ 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 5d547f355..a58e2ecb7 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 Name786(Enum): +class Name787(Enum): harris_foulkes = "harris_foulkes" class ScalarSchema98(BaseModel): - name: Optional[Name786] = None + name: Optional[Name787] = None value: float -class Name787(Enum): +class Name788(Enum): smearing = "smearing" class ScalarSchema99(BaseModel): - name: Optional[Name787] = None + name: Optional[Name788] = None value: float -class Name788(Enum): +class Name789(Enum): one_electron = "one_electron" class ScalarSchema100(BaseModel): - name: Optional[Name788] = None + name: Optional[Name789] = None value: float -class Name789(Enum): +class Name790(Enum): hartree = "hartree" class ScalarSchema101(BaseModel): - name: Optional[Name789] = None + name: Optional[Name790] = None value: float -class Name790(Enum): +class Name791(Enum): exchange = "exchange" class ScalarSchema102(BaseModel): - name: Optional[Name790] = None + name: Optional[Name791] = None value: float -class Name791(Enum): +class Name792(Enum): exchange_correlation = "exchange_correlation" class ScalarSchema103(BaseModel): - name: Optional[Name791] = None + name: Optional[Name792] = None value: float -class Name792(Enum): +class Name793(Enum): ewald = "ewald" class ScalarSchema104(BaseModel): - name: Optional[Name792] = None + name: Optional[Name793] = None value: float -class Name793(Enum): +class Name794(Enum): alphaZ = "alphaZ" class ScalarSchema105(BaseModel): - name: Optional[Name793] = None + name: Optional[Name794] = None value: float -class Name794(Enum): +class Name795(Enum): atomic_energy = "atomic_energy" class ScalarSchema106(BaseModel): - name: Optional[Name794] = None + name: Optional[Name795] = None value: float -class Name795(Enum): +class Name796(Enum): eigenvalues = "eigenvalues" class ScalarSchema107(BaseModel): - name: Optional[Name795] = None + name: Optional[Name796] = None value: float -class Name796(Enum): +class Name797(Enum): PAW_double_counting_correction_2 = "PAW_double-counting_correction_2" class ScalarSchema108(BaseModel): - name: Optional[Name796] = None + name: Optional[Name797] = None value: float -class Name797(Enum): +class Name798(Enum): PAW_double_counting_correction_3 = "PAW_double-counting_correction_3" class ScalarSchema109(BaseModel): - name: Optional[Name797] = None + name: Optional[Name798] = None value: float -class Name798(Enum): +class Name799(Enum): hartree_fock = "hartree_fock" class ScalarSchema110(BaseModel): - name: Optional[Name798] = None + name: Optional[Name799] = None value: float -class Name799(Enum): +class Name800(Enum): total_energy_contributions = "total_energy_contributions" @@ -208,5 +208,5 @@ class TotalEnergyContributionsPropertySchema(BaseModel): """ hartree-fock contribution """ - name: Name799 + name: Name800 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 cf3705f3e..c70230643 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 @@ -38,7 +38,7 @@ class Label35(Enum): Absorption_coefficient = "Absorption coefficient" -class Units355(Enum): +class Units357(Enum): debye_angstrom__2 = "(debye/angstrom)^2" km_mol = "km/mol" m_mol = "m/mol" @@ -50,7 +50,7 @@ class AxisSchema38(BaseModel): """ label of an axis object """ - units: Optional[Units355] = None + units: Optional[Units357] = None """ units for an axis """ 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 6ab1ab33c..3a6d51dda 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 @@ -1131,7 +1131,7 @@ class CutoffsContextItemSchema(BaseModel): extraData: Dict[str, Any] -class Name835(Enum): +class Name836(Enum): kgrid = "kgrid" qgrid = "qgrid" igrid = "igrid" @@ -1161,7 +1161,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name836(Enum): +class Name837(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" 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 e37f3f2ad..08a25ba5e 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 Units240(Enum): +class Units242(Enum): eV_A_2 = "eV/A^2" class HOMOEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units240] + units: Union[Units, Units242] 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 cc450e912..daf3c69a2 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 Units258(Enum): +class Units260(Enum): eV_A_2 = "eV/A^2" class IonizationPotentialScalarPropertySchema(BaseModel): name: Name - units: Union[Units, Units258] + units: Union[Units, Units260] 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 223b1f93f..06e1374c5 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 Units260(Enum): +class Units262(Enum): eV_A_2 = "eV/A^2" class LUMOEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units260] + units: Union[Units, Units262] 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 a75d376c8..d208f0df0 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 Units296(Enum): +class Units298(Enum): eV_A_2 = "eV/A^2" class ReactionEnergyBarrierPropertySchema(BaseModel): name: Name - units: Union[Units, Units296] + units: Union[Units, Units298] 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 c258ef6f8..3550fc754 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 Units336(Enum): +class Units338(Enum): eV_A_2 = "eV/A^2" class SurfaceEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units336] + units: Union[Units, Units338] 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 32b218335..76ec1fd77 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 Units339(Enum): +class Units341(Enum): eV_A_2 = "eV/A^2" class ThermalCorrectionToEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units339] + units: Union[Units, Units341] 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 d814062af..84c76c6ca 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 Units341(Enum): +class Units343(Enum): eV_A_2 = "eV/A^2" class ThermalCorrectionToEnthalpyPropertySchema(BaseModel): name: Name - units: Union[Units, Units341] + units: Union[Units, Units343] 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 b437d7976..684aea824 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 Units343(Enum): +class Units345(Enum): eV_A_2 = "eV/A^2" class TotalEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units343] + units: Union[Units, Units345] 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 d354774a3..86a94128a 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 Units353(Enum): +class Units355(Enum): eV_A_2 = "eV/A^2" class ValenceBandOffsetPropertySchema(BaseModel): name: Name - units: Union[Units, Units353] + units: Union[Units, Units355] 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 082e81557..cc27a21da 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 Units361(Enum): +class Units363(Enum): eV_A_2 = "eV/A^2" class ZeroPointEnergyPropertySchema(BaseModel): name: Name - units: Union[Units, Units361] + units: Union[Units, Units363] 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 3f1ce5ca0..dc73acd96 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 Name606(Enum): +class Name607(Enum): ring = "ring" class RingPatternSchema(BaseModel): - name: Name606 + name: Name607 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 Name607(Enum): +class Name608(Enum): special_bond = "special_bond" class SpecialBondPatternSchema(BaseModel): - name: Name607 + name: Name608 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 6b7ab2adc..52f3ff05c 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 Units255(Enum): +class Units257(Enum): eV = "eV" Ry = "Ry" hartree = "hartree" class Electronic(BaseModel): - units: Optional[Units255] = None + units: Optional[Units257] = 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 fef583da2..80917a4d0 100644 --- a/src/py/mat3ra/esse/models/property/holder.py +++ b/src/py/mat3ra/esse/models/property/holder.py @@ -245,7 +245,7 @@ class FermiEnergyPropertySchema(BaseModel): class Name498(Enum): - homo_energy = "homo_energy" + formation_energy = "formation_energy" class Units209(Enum): @@ -263,14 +263,14 @@ class Units210(Enum): eV_A_2 = "eV/A^2" -class HOMOEnergyPropertySchema(BaseModel): +class FormationEnergyPropertySchema(BaseModel): name: Literal["10#-datamodel-code-generator-#-object-#-special-#"] units: Union[Units209, Units210] value: float class Name499(Enum): - ionization_potential = "ionization_potential" + homo_energy = "homo_energy" class Units211(Enum): @@ -288,14 +288,14 @@ class Units212(Enum): eV_A_2 = "eV/A^2" -class IonizationPotentialScalarPropertySchema(BaseModel): +class HOMOEnergyPropertySchema(BaseModel): name: Literal["11#-datamodel-code-generator-#-object-#-special-#"] units: Union[Units211, Units212] value: float class Name500(Enum): - lumo_energy = "lumo_energy" + ionization_potential = "ionization_potential" class Units213(Enum): @@ -313,32 +313,57 @@ class Units214(Enum): eV_A_2 = "eV/A^2" -class LUMOEnergyPropertySchema(BaseModel): +class IonizationPotentialScalarPropertySchema(BaseModel): name: Literal["12#-datamodel-code-generator-#-object-#-special-#"] units: Union[Units213, Units214] value: float +class Name501(Enum): + lumo_energy = "lumo_energy" + + +class Units215(Enum): + kcal_mol = "kcal/mol" + kJ_mol = "kJ/mol" + eV = "eV" + J_mol = "J/mol" + hartree = "hartree" + cm_1 = "cm-1" + Ry = "Ry" + eV_atom = "eV/atom" + + +class Units216(Enum): + eV_A_2 = "eV/A^2" + + +class LUMOEnergyPropertySchema(BaseModel): + name: Literal["13#-datamodel-code-generator-#-object-#-special-#"] + units: Union[Units215, Units216] + value: float + + class ArrayOf3NumberElementsSchema(RootModel[List[float]]): root: List[float] = Field(..., title="array of 3 number elements schema") -class Name501(Enum): +class Name502(Enum): stress_tensor = "stress_tensor" -class Units215(Enum): +class Units217(Enum): kbar = "kbar" pa = "pa" class StressTensorPropertySchema(BaseModel): value: List[ArrayOf3NumberElementsSchema] = Field(..., max_length=3, min_length=3, title="matrix 3x3 schema") - name: Literal["13#-datamodel-code-generator-#-object-#-special-#"] - units: Units215 + name: Literal["14#-datamodel-code-generator-#-object-#-special-#"] + units: Units217 -class Name502(Enum): +class Name503(Enum): band_gaps = "band_gaps" @@ -347,7 +372,7 @@ class Type(Enum): indirect = "indirect" -class Units216(Enum): +class Units218(Enum): kcal_mol = "kcal/mol" kJ_mol = "kJ/mol" eV = "eV" @@ -377,7 +402,7 @@ class BandGapSchema(BaseModel): """ spin: Optional[float] = None type: Type - units: Optional[Units216] = None + units: Optional[Units218] = None value: float @@ -397,7 +422,7 @@ class Eigenvalue2(BaseModel): class BandGapsPropertySchema(BaseModel): - name: Literal["14#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["15#-datamodel-code-generator-#-object-#-special-#"] values: List[BandGapSchema] eigenvalues: Optional[List[Eigenvalue2]] = None @@ -406,7 +431,7 @@ class Label(Enum): kpoints = "kpoints" -class Units217(Enum): +class Units219(Enum): crystal = "crystal" cartesian = "cartesian" @@ -416,7 +441,7 @@ class AxisSchema(BaseModel): """ label of an axis object """ - units: Optional[Units217] = "crystal" + units: Optional[Units219] = "crystal" """ units for an axis """ @@ -426,7 +451,7 @@ class Label9(Enum): energy = "energy" -class Units218(Enum): +class Units220(Enum): kcal_mol = "kcal/mol" kJ_mol = "kJ/mol" eV = "eV" @@ -442,13 +467,13 @@ class AxisSchema12(BaseModel): """ label of an axis object """ - units: Optional[Units218] = None + units: Optional[Units220] = None """ units for an axis """ -class Name503(Enum): +class Name504(Enum): band_structure = "band_structure" @@ -460,7 +485,7 @@ class SpinEnum(Enum): class BandStructurePropertySchema(BaseModel): xAxis: AxisSchema = Field(..., title="axis schema") yAxis: AxisSchema12 = Field(..., title="axis schema") - name: Literal["15#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["16#-datamodel-code-generator-#-object-#-special-#"] spin: List[SpinEnum] """ spin of each band @@ -476,7 +501,7 @@ class Label10(Enum): qpoints = "qpoints" -class Units219(Enum): +class Units221(Enum): crystal = "crystal" cartesian = "cartesian" @@ -486,7 +511,7 @@ class AxisSchema13(BaseModel): """ label of an axis object """ - units: Optional[Units219] = "crystal" + units: Optional[Units221] = "crystal" """ units for an axis """ @@ -496,7 +521,7 @@ class Label11(Enum): frequency = "frequency" -class Units220(Enum): +class Units222(Enum): cm_1 = "cm-1" THz = "THz" meV = "meV" @@ -507,20 +532,20 @@ class AxisSchema14(BaseModel): """ label of an axis object """ - units: Optional[Units220] = None + units: Optional[Units222] = None """ units for an axis """ -class Name504(Enum): +class Name505(Enum): phonon_dispersions = "phonon_dispersions" class PhononBandStructurePropertySchema(BaseModel): xAxis: AxisSchema13 = Field(..., title="axis schema") yAxis: AxisSchema14 = Field(..., title="axis schema") - name: Literal["16#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["17#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -528,137 +553,137 @@ class PhononBandStructurePropertySchema(BaseModel): yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema") -class Name505(Enum): +class Name506(Enum): temperature_entropy = "temperature_entropy" class ScalarSchema(BaseModel): - name: Optional[Name505] = None + name: Optional[Name506] = None value: float -class Name506(Enum): +class Name507(Enum): harris_foulkes = "harris_foulkes" class ScalarSchema58(BaseModel): - name: Optional[Name506] = None + name: Optional[Name507] = None value: float -class Name507(Enum): +class Name508(Enum): smearing = "smearing" class ScalarSchema59(BaseModel): - name: Optional[Name507] = None + name: Optional[Name508] = None value: float -class Name508(Enum): +class Name509(Enum): one_electron = "one_electron" class ScalarSchema60(BaseModel): - name: Optional[Name508] = None + name: Optional[Name509] = None value: float -class Name509(Enum): +class Name510(Enum): hartree = "hartree" class ScalarSchema61(BaseModel): - name: Optional[Name509] = None + name: Optional[Name510] = None value: float -class Name510(Enum): +class Name511(Enum): exchange = "exchange" class ScalarSchema62(BaseModel): - name: Optional[Name510] = None + name: Optional[Name511] = None value: float -class Name511(Enum): +class Name512(Enum): exchange_correlation = "exchange_correlation" class ScalarSchema63(BaseModel): - name: Optional[Name511] = None + name: Optional[Name512] = None value: float -class Name512(Enum): +class Name513(Enum): ewald = "ewald" class ScalarSchema64(BaseModel): - name: Optional[Name512] = None + name: Optional[Name513] = None value: float -class Name513(Enum): +class Name514(Enum): alphaZ = "alphaZ" class ScalarSchema65(BaseModel): - name: Optional[Name513] = None + name: Optional[Name514] = None value: float -class Name514(Enum): +class Name515(Enum): atomic_energy = "atomic_energy" class ScalarSchema66(BaseModel): - name: Optional[Name514] = None + name: Optional[Name515] = None value: float -class Name515(Enum): +class Name516(Enum): eigenvalues = "eigenvalues" class ScalarSchema67(BaseModel): - name: Optional[Name515] = None + name: Optional[Name516] = None value: float -class Name516(Enum): +class Name517(Enum): PAW_double_counting_correction_2 = "PAW_double-counting_correction_2" class ScalarSchema68(BaseModel): - name: Optional[Name516] = None + name: Optional[Name517] = None value: float -class Name517(Enum): +class Name518(Enum): PAW_double_counting_correction_3 = "PAW_double-counting_correction_3" class ScalarSchema69(BaseModel): - name: Optional[Name517] = None + name: Optional[Name518] = None value: float -class Name518(Enum): +class Name519(Enum): hartree_fock = "hartree_fock" class ScalarSchema70(BaseModel): - name: Optional[Name518] = None + name: Optional[Name519] = None value: float -class Name519(Enum): +class Name520(Enum): total_energy_contributions = "total_energy_contributions" -class Units221(Enum): +class Units223(Enum): kcal_mol = "kcal/mol" kJ_mol = "kJ/mol" eV = "eV" @@ -726,11 +751,11 @@ class TotalEnergyContributionsPropertySchema(BaseModel): """ hartree-fock contribution """ - name: Literal["17#-datamodel-code-generator-#-object-#-special-#"] - units: Optional[Units221] = None + name: Literal["18#-datamodel-code-generator-#-object-#-special-#"] + units: Optional[Units223] = None -class Units222(Enum): +class Units224(Enum): cm_1 = "cm-1" THz = "THz" meV = "meV" @@ -741,7 +766,7 @@ class AxisSchema15(BaseModel): """ label of an axis object """ - units: Optional[Units222] = None + units: Optional[Units224] = None """ units for an axis """ @@ -751,7 +776,7 @@ class Label13(Enum): Phonon_DOS = "Phonon DOS" -class Units223(Enum): +class Units225(Enum): states_cm_1 = "states/cm-1" states_THz = "states/THz" states_meV = "states/meV" @@ -762,20 +787,20 @@ class AxisSchema16(BaseModel): """ label of an axis object """ - units: Optional[Units223] = None + units: Optional[Units225] = None """ units for an axis """ -class Name520(Enum): +class Name521(Enum): phonon_dos = "phonon_dos" class PhononDensityOfStatesPropertySchema(BaseModel): xAxis: AxisSchema15 = Field(..., title="axis schema") yAxis: AxisSchema16 = Field(..., title="axis schema") - name: Literal["18#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["19#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -802,7 +827,7 @@ class Label15(Enum): energy = "energy" -class Units224(Enum): +class Units226(Enum): kcal_mol = "kcal/mol" kJ_mol = "kJ/mol" eV = "eV" @@ -818,20 +843,20 @@ class AxisSchema18(BaseModel): """ label of an axis object """ - units: Optional[Units224] = None + units: Optional[Units226] = None """ units for an axis """ -class Name521(Enum): +class Name522(Enum): potential_profile = "potential_profile" class PotentialProfilePropertySchema(BaseModel): xAxis: AxisSchema17 = Field(..., title="axis schema") yAxis: AxisSchema18 = Field(..., title="axis schema") - name: Literal["19#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["20#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -869,14 +894,14 @@ class AxisSchema20(BaseModel): """ -class Name522(Enum): +class Name523(Enum): wavefunction_amplitude = "wavefunction_amplitude" class WavefunctionAmplitudePropertySchema(BaseModel): xAxis: AxisSchema19 = Field(..., title="axis schema") yAxis: AxisSchema20 = Field(..., title="axis schema") - name: Literal["20#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["21#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -908,20 +933,20 @@ class AxisSchema22(BaseModel): """ label of an axis object """ - units: Optional[Units224] = None + units: Optional[Units226] = None """ units for an axis """ -class Name523(Enum): +class Name524(Enum): reaction_energy_profile = "reaction_energy_profile" class ReactionEnergyProfilePropertySchema(BaseModel): xAxis: AxisSchema21 = Field(..., title="axis schema") yAxis: AxisSchema22 = Field(..., title="axis schema") - name: Literal["21#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["22#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -934,7 +959,7 @@ class AxisSchema23(BaseModel): """ label of an axis object """ - units: Optional[Units224] = None + units: Optional[Units226] = None """ units for an axis """ @@ -944,7 +969,7 @@ class Label21(Enum): density_of_states = "density of states" -class Units227(Enum): +class Units229(Enum): states_unitcell = "states/unitcell" @@ -953,13 +978,13 @@ class AxisSchema24(BaseModel): """ label of an axis object """ - units: Optional[Units227] = None + units: Optional[Units229] = None """ units for an axis """ -class Name524(Enum): +class Name525(Enum): density_of_states = "density_of_states" @@ -990,7 +1015,7 @@ class LegendItem(BaseModel): class DensityOfStatesPropertySchema(BaseModel): xAxis: AxisSchema23 = Field(..., title="axis schema") yAxis: AxisSchema24 = Field(..., title="axis schema") - name: Literal["22#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["23#-datamodel-code-generator-#-object-#-special-#"] legend: List[LegendItem] xDataArray: List[Union[float, List[float]]] """ @@ -999,7 +1024,7 @@ class DensityOfStatesPropertySchema(BaseModel): yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema") -class Name525(Enum): +class Name526(Enum): dielectric_tensor = "dielectric_tensor" @@ -1025,11 +1050,11 @@ class DielectricTensor(BaseModel): class DielectricTensorPropertySchema(BaseModel): - name: Literal["23#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["24#-datamodel-code-generator-#-object-#-special-#"] values: List[DielectricTensor] -class Name526(Enum): +class Name527(Enum): file_content = "file_content" @@ -1067,7 +1092,7 @@ class ObjectStorageContainerData(BaseModel): class FileContentPropertySchema(BaseModel): - name: Literal["24#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["25#-datamodel-code-generator-#-object-#-special-#"] filetype: Filetype """ What kind of file this is, e.g. image / text @@ -1083,11 +1108,11 @@ class FileContentPropertySchema(BaseModel): """ -class Name527(Enum): +class Name528(Enum): hubbard_u = "hubbard_u" -class Units228(Enum): +class Units230(Enum): eV = "eV" @@ -1108,12 +1133,12 @@ class AtomicDataPerOrbitalNumeric(BaseModel): class HubbardUParametersPropertySchema(BaseModel): - name: Literal["25#-datamodel-code-generator-#-object-#-special-#"] - units: Units228 + name: Literal["26#-datamodel-code-generator-#-object-#-special-#"] + units: Units230 values: List[AtomicDataPerOrbitalNumeric] -class Name528(Enum): +class Name529(Enum): hubbard_v = "hubbard_v" @@ -1147,18 +1172,18 @@ class AtomicDataPerOrbitalPairNumeric(BaseModel): class HubbardVParametersPropertySchema(BaseModel): - name: Literal["26#-datamodel-code-generator-#-object-#-special-#"] - units: Units228 + name: Literal["27#-datamodel-code-generator-#-object-#-special-#"] + units: Units230 values: List[AtomicDataPerOrbitalPairNumeric] -class Name529(Enum): +class Name530(Enum): hubbard_v_nn = "hubbard_v_nn" class HubbardVNNParametersPropertySchema(BaseModel): - name: Literal["27#-datamodel-code-generator-#-object-#-special-#"] - units: Units228 + name: Literal["28#-datamodel-code-generator-#-object-#-special-#"] + units: Units230 values: List[AtomicDataPerOrbitalPairNumeric] @@ -1166,7 +1191,7 @@ class Label22(Enum): z_coordinate = "z coordinate" -class Units231(Enum): +class Units233(Enum): km = "km" m = "m" cm = "cm" @@ -1184,7 +1209,7 @@ class AxisSchema25(BaseModel): """ label of an axis object """ - units: Optional[Units231] = None + units: Optional[Units233] = None """ units for an axis """ @@ -1194,7 +1219,7 @@ class Label23(Enum): energy = "energy" -class Units232(Enum): +class Units234(Enum): kcal_mol = "kcal/mol" kJ_mol = "kJ/mol" eV = "eV" @@ -1210,20 +1235,20 @@ class AxisSchema26(BaseModel): """ label of an axis object """ - units: Optional[Units232] = None + units: Optional[Units234] = None """ units for an axis """ -class Name530(Enum): +class Name531(Enum): average_potential_profile = "average_potential_profile" class AveragePotentialProfilePropertySchema(BaseModel): xAxis: AxisSchema25 = Field(..., title="axis schema") yAxis: AxisSchema26 = Field(..., title="axis schema") - name: Literal["28#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["29#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -1250,7 +1275,7 @@ class Label25(Enum): charge_density = "charge density" -class Units233(Enum): +class Units235(Enum): e_A = "e/A" @@ -1259,20 +1284,20 @@ class AxisSchema28(BaseModel): """ label of an axis object """ - units: Optional[Units233] = None + units: Optional[Units235] = None """ units for an axis """ -class Name531(Enum): +class Name532(Enum): charge_density_profile = "charge_density_profile" class ChargeDensityProfilePropertySchema(BaseModel): xAxis: AxisSchema27 = Field(..., title="axis schema") yAxis: AxisSchema28 = Field(..., title="axis schema") - name: Literal["29#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["30#-datamodel-code-generator-#-object-#-special-#"] xDataArray: List[Union[float, List[float]]] """ array containing values of x Axis @@ -1280,7 +1305,7 @@ class ChargeDensityProfilePropertySchema(BaseModel): yDataSeries: List[List[float]] = Field(..., title="1 dimension data series schema") -class Name532(Enum): +class Name533(Enum): workflow_pyml_predict = "workflow:pyml_predict" @@ -2374,7 +2399,7 @@ class CutoffsContextItemSchema(BaseModel): extraData: Dict[str, Any] -class Name533(Enum): +class Name534(Enum): kgrid = "kgrid" qgrid = "qgrid" igrid = "igrid" @@ -2404,7 +2429,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name534(Enum): +class Name535(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" @@ -3431,7 +3456,7 @@ class Application(BaseModel): class WorkflowPropertySchema(BaseModel): - name: Literal["30#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["31#-datamodel-code-generator-#-object-#-special-#"] """ entity name """ @@ -3492,7 +3517,7 @@ class WorkflowPropertySchema(BaseModel): descriptionObject: Optional[Dict[str, Any]] = None -class Name535(Enum): +class Name536(Enum): magnetic_moments = "magnetic_moments" @@ -3507,21 +3532,21 @@ class AtomicVectorSchema(BaseModel): """ -class Units234(Enum): +class Units236(Enum): uB = "uB" class MagneticMomentsPropertySchema(BaseModel): - name: Literal["31#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["32#-datamodel-code-generator-#-object-#-special-#"] values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema") - units: Units234 + units: Units236 -class Name536(Enum): +class Name537(Enum): atomic_forces = "atomic_forces" -class Units235(Enum): +class Units237(Enum): eV_bohr = "eV/bohr" eV_angstrom = "eV/angstrom" Ry_a_u_ = "Ry/a.u." @@ -3531,43 +3556,43 @@ class Units235(Enum): class AtomicForcesPropertySchema(BaseModel): - name: Literal["32#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["33#-datamodel-code-generator-#-object-#-special-#"] values: List[AtomicVectorSchema] = Field(..., title="atomic vectors schema") - units: Units235 + units: Units237 -class Name537(Enum): +class Name538(Enum): convergence_electronic = "convergence_electronic" -class Units236(Enum): +class Units238(Enum): eV = "eV" Ry = "Ry" hartree = "hartree" class ConvergenceElectronicPropertySchema(BaseModel): - name: Literal["33#-datamodel-code-generator-#-object-#-special-#"] - units: Units236 + name: Literal["34#-datamodel-code-generator-#-object-#-special-#"] + units: Units238 data: List[List[float]] -class Name538(Enum): +class Name539(Enum): convergence_ionic = "convergence_ionic" -class Units237(Enum): +class Units239(Enum): eV = "eV" -class Units238(Enum): +class Units240(Enum): eV = "eV" Ry = "Ry" hartree = "hartree" class Electronic(BaseModel): - units: Optional[Units238] = None + units: Optional[Units240] = None """ units for force tolerance """ @@ -3590,12 +3615,12 @@ class Datum(BaseModel): class ConvergenceIonicPropertySchema(BaseModel): - name: Literal["34#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["35#-datamodel-code-generator-#-object-#-special-#"] tolerance: Optional[Any] = None """ for ionic convergence tolerance shows force tolerance """ - units: Units237 + units: Units239 """ units for force tolerance """ @@ -3605,12 +3630,12 @@ class ConvergenceIonicPropertySchema(BaseModel): """ -class Name539(Enum): +class Name540(Enum): is_relaxed = "is_relaxed" class IsRelaxedPropertySchema(BaseModel): - name: Literal["35#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["36#-datamodel-code-generator-#-object-#-special-#"] value: bool materialId: str """ @@ -3618,12 +3643,12 @@ class IsRelaxedPropertySchema(BaseModel): """ -class Name540(Enum): +class Name541(Enum): final_structure = "final_structure" class FinalStructurePropertySchema(BaseModel): - name: Literal["36#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["37#-datamodel-code-generator-#-object-#-special-#"] isRelaxed: bool materialId: str """ @@ -3631,12 +3656,12 @@ class FinalStructurePropertySchema(BaseModel): """ -class Name541(Enum): +class Name542(Enum): jupyter_notebook_endpoint = "jupyter_notebook_endpoint" class JupyterNotebookEndpointPropertySchema(BaseModel): - name: Literal["37#-datamodel-code-generator-#-object-#-special-#"] + name: Literal["38#-datamodel-code-generator-#-object-#-special-#"] host: str port: float token: str @@ -3687,6 +3712,7 @@ class PropertyHolderSchema(BaseModel): TotalEnergyPropertySchema, TotalForcesPropertySchema, FermiEnergyPropertySchema, + FormationEnergyPropertySchema, HOMOEnergyPropertySchema, IonizationPotentialScalarPropertySchema, LUMOEnergyPropertySchema, diff --git a/src/py/mat3ra/esse/models/property/proto_holder.py b/src/py/mat3ra/esse/models/property/proto_holder.py index 60a619d67..fcf68d224 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 Name672(Enum): +class Name673(Enum): boundary_conditions = "boundary_conditions" @@ -45,7 +45,7 @@ class Type(Enum): class BoundaryConditionsPropertySchema(BaseModel): - name: Name672 + name: Name673 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/workflow/__init__.py b/src/py/mat3ra/esse/models/workflow/__init__.py index c2cd00cce..ba069294d 100644 --- a/src/py/mat3ra/esse/models/workflow/__init__.py +++ b/src/py/mat3ra/esse/models/workflow/__init__.py @@ -1157,7 +1157,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name833(Enum): +class Name834(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py b/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py index a35f9a196..50da5634c 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/__init__.py @@ -1083,7 +1083,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name771(Enum): +class Name772(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py b/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py index f7ec4b877..faef16c3e 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/mixin.py @@ -1083,7 +1083,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name604(Enum): +class Name605(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" diff --git a/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py b/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py index 60250b662..0e0f1b31b 100644 --- a/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py +++ b/src/py/mat3ra/esse/models/workflow/subworkflow/unit.py @@ -938,7 +938,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name802(Enum): +class Name803(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath" 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 2f2077b52..fe1ed34ec 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 @@ -367,7 +367,7 @@ class GridContextItemSchema(BaseModel): isEdited: bool -class Name577(Enum): +class Name578(Enum): qpath = "qpath" ipath = "ipath" kpath = "kpath"