Ontology vs Taxonomy vs Metamodel
Often the terms 'ontology', 'taxonomy' and 'metamodel' are used interchangeably as thought they have the same meaning and comprise the same set of things - they don't.
So it's worth spending a little time briefly looking at what a metamodel is before then examining the differences
before summarising what we've found.
A Metamodel
The TRAK metamodel consists of:-
- triples, each formed from
- one or two node elements
- and a connector element
- properties of node and connector elements
- enumerated values for some of the node and connector element properties
It is the set of triples that fundamentally defines a metamodel - isolated node and connector elements do not constitute a metamodel .
The triples are formed from combinations of node and connector elements - usually 2 node elements and 1 connector element e.g. 'Argument supports Claim' or 1 node element and 1 connector element for a reflexive triple e.g. 'Physical has part Physical'.
An ontology or a taxonomy does not form triples from the elements - they define specific types of relationships between individual elements. This is explained below.
A metamodel is comprised of triples. A metamodel is not an ontology. A metamodel is also not a taxonomy.
Metamodel vs Ontology vs Taxonomy
The TRAK Metamodel, like most metamodels contains an ontology and a taxonomy.
An Ontology
Consider the Organisation element, defined as:
OED:"organization (n.), sense 4.a" https://doi.org/10.1093/OED/1930376110
An organised body of people, associated for a particular purpose.
This defines 'Organisation' by reference to 'organization' within the Oxford English Dictionary - a recognized vocabulary or ontology
In TRAK each atomic or individual metamodel element as an ontology element is defined with respect to an ontology element in a third party accepted ontology or vocabulary. For example the Vulnerability element:
This ontology definition does not define any triple within the TRAK metamodel - it defines a single Vulnerability (metamodel node) element with respect to a single Vulnerability element in an external ontology - the OED. The ontology definition of a metamodel connector element can be similarly made with reference to a single external ontology element.
An Architecture and its description in an Architecture Description are distinct concepts.
ISO/IEC/IEEE 42010 Conceptual Model - http://www.iso-architecture.org/42010/cm/
An Architecture Description (AD) may be stored on a computer. The architecture itself is conceptual until an AD exists and hence cannot be stored on a computer.
Similarly an Ontology and its Ontology Description are distinct concepts. In fact we can say that an Ontology is a particular form of Achitecture and the Ontology Description is an Architecture Description.so substituting 'Metamodel' for 'System of Interest', 'Ontology' for 'Architecture' and 'Ontology Description' for 'Architecture Description' we have:
Usually what you find in files on the World Wide Web are ontology descriptions (not ontologies) - described using languages such as OWL (Web Ontology Language) or RDF (Resource Description Framework). We might refer to these as "OWL + RDF - described ontologies" to separate the ontology from its description. In ISO/IEC/IEEE 42010 these Ontology Description Languages (ODLs) are also Architecture Description Languages:
"architecture description language" ISO/IEC/IEEE 42010:2011, International Standards Organisation.An ADL is any form of expression for use in Architecture Descriptions.
An ADL provides one or more model kinds as a means to frame some concerns for its audience of stakeholders. An ADL can be narrowly focused, defining a single model kind, or widely focused to provide several model kinds, optionally organized into viewpoints. Often an ADL is supported by automated tools to aid the creation, use and analysis of its models.
EXAMPLES Rapide [25], Wright [43], SysML [31], ArchiMate [40] and the viewpoint languages of RM-ODP [ISO 10746] are ADLs in the terms of this International Standard
The ontology description using RDF + OWL Ontology Description Languages describes the individual elements - nodes, relationships, properties and property values in the TRAK metamodel with respect to other vocabularies (ontologies) so that TRAK architecture descriptions can be machine-read as knowledge graphs. The web pages provide some of the ontology description of TRAK metamodel elements in a human-readable form.
An ontology description using OWL, Turtle or RDF or any other ODL , however, is not a description of a metamodel - it doesn't describe or define the combinations of the metamodel elements - the triples - that form the basis of the content of TRAK architecture views. An ontology description defines the relationship between a pair of ontology elements - for example class structure (subClass) or set membership (isDisjointWith). An ontology only considers the definition of an individual class, property or property value.
A metamodel is defined by its triples not just isolated node or connector elements.
An ontology is not a metamodel. A metamodel usually contains an ontology.
An ontology is not an ontology description - an ontology is described by an ontology description.
An ontology description language (ODL) e.g. OWL is not an ontology description nor an ontology - an ontology description is produced using an ontology description language.
A Taxonomy
The TRAK metamodel contains a taxonomy - a parent / child or class structure through which element properties and participation in triples are inherited. For example the TRAK Resource element:-
A taxonomy is a particular type or restricted set of ontology limited to a class hierarchy. In fact we can say that a taxonomy is a restricted form of an ontology.
Summary Statements
We can say the following about a metamodel, an ontology and a taxonomy:
- A metamodel is defined by triples - a metamodel is not an ontology or a taxonomy
- a metamodel contains an ontology
- a metamodel usually contains a taxonomy e.g. in the TRAK metamodel - Resource
- An ontology defines the meaning of an individual element with respect to another ontology element - an ontology is not a metamodel
- A taxonomy is a restricted form of an ontology limited to class / subclass relationships between 2 ontology elements.
Hence if you find something that only defines an ontology this is not a metamodel - defining an ontology is not sufficient to define a metamodel.
If you can store something on a computer it is an architecture description (of an architecture) - not the architecture itself. More specifically it is an ontology description.
The TRAK metamodel is subject to the terms of open source license: GNU Free Documentation License (Version 1.3, November 2008) at https://www.gnu.org/licenses/fdl-1.3.html.