Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions example/job.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
{
"status": "pre-submission",
"mode": "normal",
"_material": {
"...": "include(job/_material.json)"
},
"_materials": [
{
"...": "include(job/_material.json)"
}
],
"compute": {
"...": "include(job/compute.json)"
},
Expand Down
12 changes: 12 additions & 0 deletions example/material/fingerprint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"primary": [
{
"...": "include(fingerprint/primary.json)"
}
],
"secondary": [
{
"...": "include(characteristic.json)"
}
]
}
7 changes: 7 additions & 0 deletions example/material/fingerprint/primary.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"type": "compound-specific",
"subtype": "numeric",
"category": "stoichiometric",
"name": "p_norms",
"...": "include(primary/p_norms.json)"
}
21 changes: 21 additions & 0 deletions example/material/fingerprint/primary/compound_specific_array.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"name": "p_norms",
"data": [
{
"name": "p03",
"value": 0.693
},
{
"name": "p05",
"value": 0.671
},
{
"name": "p07",
"value": 0.667
},
{
"name": "p09",
"value": 0.667
}
]
}
3 changes: 3 additions & 0 deletions example/material/fingerprint/primary/p_norms.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"...": "include(compound_specific_array.json)"
}
3 changes: 3 additions & 0 deletions example/material/structure/elements.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to discuss regarding elements schema.

Elements schema is to store elemental properties for a specific element. If I include atomic_data in elements json, I unnecessarily store the ids of the elements.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK

"...": "include(atomic_data.json)"
}
2 changes: 1 addition & 1 deletion example/material/structure/lattice_bravais.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "lattice_bravais",
"type": "CUB",
"name": "lattice_bravais",
"a": 5.14,
"b": 5.14,
"c": 5.14,
Expand Down
7 changes: 5 additions & 2 deletions schema/job.json
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,12 @@
"description": "Subset of the full information about the project that this job belongs to. Included for quick access in search.",
"$ref": "file:job/_project.json"
},
"_material": {
"_materials": {
"description": "Subset of the full information about the materials used inside this job.",
"$ref": "file:job/_material.json"
"type": "array",
"items": {
"$ref": "file:job/_material.json"
}
},
"version": {
"description": "Job's schema version. Used to distinct between different schemas.",
Expand Down
25 changes: 25 additions & 0 deletions schema/material/fingerprint.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "material fingerprint schema",
"description": "collection of descriptors with information about materials structure, composition and characteristics required for performing advanced ML tasks",
"properties": {
"primary": {
"type": "array",
"description": "descriptors related to structure, stoichiometry and physical reference data of materials. Calculated on-the-fly ",
"items": {
"$ref": "file:fingerprint/primary.json"
}
},
"secondary": {
"type": "array",
"description": "characteristic properties",
"items": {
"$ref": "file:characteristic.json"
}
}
},
"required": [
"primary",
"secondary"
]
}
32 changes: 32 additions & 0 deletions schema/material/fingerprint/_primary.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "primary descriptor category schema",
"description": "type/subtype each primary descriptor belongs to",
"properties": {
"type": {
"type": "string",
"enum": [
"element-specific",
"compound-specific"
]
},
"subtype": {
"description": "type of descriptor, whether it is a number or category",
"type": "string",
"enum": [
"numeric",
"nominal",
"ordinal"
]
},
"category": {
"type": "string",
"enum": [
"chemical",
"stoichiometric",
"structural",
"electronic"
]
}
}
}
56 changes: 56 additions & 0 deletions schema/material/fingerprint/primary.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "primary descriptors schema",
"description": "collection of stoichiometric, structural, physical, electronic and chemical",
"allOf": [
{
"$ref": "file:_primary.json"
}
],
"properties": {
"name": {
"description": "Name of the descriptor",
"type": "string",
"enum": [
"local_environment",
"element_spin_state",
"valence_orbital_occupancy",
"p_norms",
"elemental_composition",
"crystal_cell_type",
"material_type",
"is_relaxed",
"avg_atom_volume"
]
}
},
"oneOf": [
{
"$ref": "file:primary/local_environment.json"
},
{
"$ref": "file:primary/element_spin_state.json"
},
{
"$ref": "file:primary/valence_orbital_occupancy.json"
},
{
"$ref": "file:primary/p_norms.json"
},
{
"$ref": "file:primary/elemental_composition.json"
},
{
"$ref": "file:primary/crystal_cell_type.json"
},
{
"$ref": "file:primary/material_type.json"
},
{
"$ref": "file:primary/is_relaxed.json"
},
{
"$ref": "file:primary/avg_atom_volume.json"
}
]
}
19 changes: 19 additions & 0 deletions schema/material/fingerprint/primary/_compound_specific.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "compound specific descriptors schema",
"description": "applicable for nominal/ordinal/numeric value types",
"properties": {
"name": {
"description": "name of the descriptor",
"type": "string"
},
"value": {
"description": "value of the descriptor",
"type": [
"string",
"number",
"boolean"
]
}
}
}
27 changes: 27 additions & 0 deletions schema/material/fingerprint/primary/_compound_specific_array.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "compound-specific descriptor array schema",
"description": "multiple elements related to compound-specific descriptor. Example: p-norms",
"properties": {
"name": {
"description": "name of the descriptor",
"type": "string"
},
"data": {
"description": "compound-specific descriptor data in an array",
"type": "array",
"items": {
"properties": {
"name": {
"description": "variable name",
"type": "string"
},
"value": {
"description": "the value for the corresponding elemental property",
"type": "number"
}
}
}
}
}
}
23 changes: 23 additions & 0 deletions schema/material/fingerprint/primary/_element_specific.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "element specific descriptors schema",
"description": "applicable for nominal/ordinal/numeric value types",
"properties": {
"elements": {
"description": "elements in a material and corresponding descriptor value",
"type": "array",
"items": {
"properties": {
"name": {
"description": "element symbol. Eg: Si",
"type": "string"
},
"value": {
"description": "elemental property value",
"type": "string"
}
}
}
}
}
}
23 changes: 23 additions & 0 deletions schema/material/fingerprint/primary/avg_atom_volume.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Structural descriptor - average volume per atom schema",
"description": "Total volume divided by number of atoms. Units: 1/Ang**3 ",
"allOf": [
{
"ref": "_compound_specific.json"
}
],
"properties": {
"name": {
"enum": [
"avg_atom_volume"
]
},
"units": {
"type": "string",
"enum": [
"1/angstrom^3"
]
}
}
}
25 changes: 25 additions & 0 deletions schema/material/fingerprint/primary/crystal_cell_type.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Structural descriptor - representation of crsytal lattice",
"description": "primitive or conventional or supercell. Representation differentiates between two materials with similiar composition.",
"allOf": [
{
"ref": "_compound_specific.json"
}
],
"properties": {
"name": {
"enum": [
"crystal_cell_type"
]
},
"value": {
"description": "cell representation",
"enum": [
"primitive",
"supercell",
"conventional"
]
}
}
}
29 changes: 29 additions & 0 deletions schema/material/fingerprint/primary/element_spin_state.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "element spin state schema schema",
"description": "spin state of each element in the material",
"allOf": [
{
"ref": "_element_specific.json"
}
],
"properties": {
"name": {
"enum": [
"element_spin_state"
]
},
"elements": {
"items": {
"value": {
"description": "high and low spin states correspond to states with max number of unpaired electrons with same spin and maximum number of paired spins respectively.",
"enum": [
"high",
"intermediate",
"low"
]
}
}
}
}
}
17 changes: 17 additions & 0 deletions schema/material/fingerprint/primary/elemental_composition.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "stocihiometric descriptor, elemental composition schema",
"description": "composition of each element in the material",
"allOf": [
{
"ref": "_compound_specific_array.json"
}
],
"properties": {
"name": {
"enum": [
"elemental_composition"
]
}
}
}
21 changes: 21 additions & 0 deletions schema/material/fingerprint/primary/is_relaxed.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Structural descriptor - identifies whether a structure is at equilibrium",
"description": "Differentiates structures with similar composition but different characteristics",
"allOf": [
{
"ref": "_compound_specific.json"
}
],
"properties": {
"name": {
"enum": [
"is_relaxed"
]
},
"value": {
"description": "Identifies a equilibrium structure.",
"type": "boolean"
}
}
}
Loading