The ChemAxiomChemDomain Ontology

The ChemAxiomChemDomain Ontology is currently a small ontology, clarifying some fundamental concepts in the chemical domain. In particular, the ontology addresses the fundamental distinction between the platonic idea of a molecule (and any data, such as identifiers etc. that may be associated with it) and bulk substances, which are composed of ("hasPart") molecules. As such, the ontology allows the modeling of both abstract molecules, bulk substances such as pure substances, mixtures, formulations etc. as well as the modeling of instances of these substances. The ontology is, in the first instance, intended to act as a schema for the generation of rdf and freely mixes OWL and RDF and is, as such, OWL Full (bear this in mind if you have reasoning tasks you may wish to accomplish). For questions, discussion and feedback, please use the ChemAxiom Google Group. To become involved in the development of these ontologies, please email chemaxiom at googlemail dot com.

Brief Description

The fundamental classes in the ontology are ChemicalElement, MolecularEntity, and ChemicalSpecies. All of these classes are subclasses of snap:Object, which, in turn, is a class of the Basic Formal Ontology, which serves as the upper ontology for this ontology.

In terms of axiomatisation, there is an explicit "hasPart" relationship between the "ChemicalSpecies" and "MolecularEntity" classes: chemical species are composed of molecular entities:

      a       owl:Class ;
      rdfs:comment "An ensemble of chemically identical molecular entities that can explore the same set of molecular energy levels on the time scale of the experiment."@en ;
      rdfs:subClassOf snap:Object ;
              [ a       owl:Restriction ;
                owl:onProperty :preseentInAmount ;
                owl:someValuesFrom xsd:string
              ] ;
              [ a       owl:Class ;
                owl:unionOf ([ a       owl:Restriction ;
                            owl:onProperty :hasPart ;
                            owl:someValuesFrom :MolecularEntity
                          ] [ a       owl:Restriction ;
                            owl:onProperty :hasPart ;
                            owl:someValuesFrom :ChemicalSpecies
              ] ;
      owl:disjointWith :ChemicalElement , :MolecularEntity , :ChemicalIdentifier .

As such then, formulations, solvents etc. are subclasses of ChemicalSpecies. The ontology furthermore defines generic classes of ChemicalSpecies such as solvents, acids, bases, catalysts etc.. These are defined in terms of the role that is inherent in them under a given set of circumstances

      a       owl:Class ;
      rdfs:subClassOf :ChemicalSpecies ;
              [ a       owl:Class ;
                owl:intersectionOf (:ChemicalSpecies [ a       owl:Restriction ;
                            owl:onProperty :hasRole ;
                            owl:someValuesFrom :SolventRole
              ] .


The ontology is licenced under a GPL v.3 licence.

Please note: other licence forms are available for commercial use.


Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.