The Elementary Multiperspective Material Ontology (EMMO)¶
The Elementary Multiperspective Material Ontology (EMMO) is a foundational ontology developed by the European Materials Modelling Council (EMMC) to provide a standard representational framework for materials science and engineering. EMMO is unique in that it starts from the bottom level, using the physical world as described by applied sciences, especially physics and materials science, rather than from abstract upper-level concepts. The ontology covers a wide range of concepts including materials, processes, properties, structures, and measurement techniques, supporting the semantic integration of materials modelling, characterization, and experimental data. EMMO is modular and extensible, enabling domain-specific extensions for specialized applications in materials research, digital twins, and manufacturing. By providing a rigorous semantic foundation, EMMO facilitates data interoperability, knowledge sharing, and advanced analytics across the materials science community. The ontology is actively maintained and extended to incorporate new concepts and requirements from ongoing research and industrial projects.
Example Usage: Annotate a materials database with EMMO terms to describe the composition, structure, and properties of a material sample, the experimental techniques used for characterization, and the modelling workflows applied, enabling semantic search and data integration across research projects.
Metrics & Statistics¶
Total Nodes |
13613 |
Total Edges |
30349 |
Root Nodes |
281 |
Leaf Nodes |
7742 |
Classes |
2448 |
Individuals |
2 |
Properties |
181 |
Maximum Depth |
41 |
Minimum Depth |
0 |
Average Depth |
8.16 |
Depth Variance |
107.87 |
Maximum Breadth |
552 |
Minimum Breadth |
1 |
Average Breadth |
67.24 |
Breadth Variance |
14619.32 |
Term Types |
2 |
Taxonomic Relations |
16281 |
Non-taxonomic Relations |
52 |
Average Terms per Type |
2.00 |
Usage Example¶
Use the following code to import this ontology programmatically:
from ontolearner.ontology import EMMO
ontology = EMMO()
ontology.load("path/to/EMMO-ontology.owl")
# Extract datasets
data = ontology.extract()
# Access specific relations
term_types = data.term_typings
taxonomic_relations = data.type_taxonomies
non_taxonomic_relations = data.type_non_taxonomic_relations