Modeling Language: OntoUML¶
The AlpineBits® Ontology is designed using the OntoUML, an ontologically well-founded extension of the UML Class Diagram that can be used to represent a domain of interest from a computationally independent perspective.
OntoUML consists of a set of stereotypes applicable to classes, associations, and attributes, with precisely defined formal semantics derived from the https://en.wikipedia.org/wiki/Upper_ontology#UFO_(Unified_Foundational_Ontology)Unified Foundational Ontology (UFO), an axiomatic formal theory based on theories from analytic metaphysics, philosophical logic, cognitive psychology, and linguistics.
An important meta-property of an OntoUML class stereotype is dubbed rigidity.
-
A rigid class statically classifies its instances, i.e., an instance of a rigid class must instantiate it throughout its whole existence. Examples include
Person,Animal,Organization,Contract, andMarriage. -
An anti-rigid class dynamically classifies its instances, i.e., an instance of an anti-rigid class at a given point in time may cease to be so later on. Examples include
Teenager,Adult,Student, andSpouse.
Another fundamental meta-property for classes is sortality.
-
a sortal class is one whose instances share a common identity principle, where the sortal class must either provide this principle or inherit it from a superclass. Examples of classes that provide identity principles include
Person,House, andCar, and those that inherit such principles includeStudent,Man,Adult,Town House, andSports Car. -
a non-sortal class is one whose set of instances includes entities complying with different identity principles. Examples include
Agent, which classifies instances of sortal classesPersonandOrganization, andPhysical Object, which classifies instances of sortal classesCarandHouse(among others).
The OntoUML class stereotypes used in the AlpineBits® Ontology are:
-
«kind»: a rigid sortal (identity provider) class that classifies object-like entities. Examples of typical kinds includePerson,Organization,Car, andHouse. -
«relator»: a rigid sortal (identity provider) class that classifies relational entities, also known as relationships. Examples includeMarriage, which relates two instances ofSpouse;Contract, which relates instances ofPartyin the context of formal agreements; andEnrollment, which relates an instance ofStudentto an instance ofEducational Institution. -
«quality»: a rigid sortal (identity provider) class that classifies entities that represent aspects of other entities and are measurable in some value space (i.e., conceptual space). A quality may be used to compare individuals, on the basis of the value it takes in a certain quality space (for example, a mass in the kilogram scale, or a position within the RGB spectrum). Examples includeWeight(as in the weight of a person),Name(as in the name of an organization),Color(as in the color of a car), andDuration(as in the duration of a concert). -
«subkind»: a rigid sortal class that inherits its identity from another sortal. Examples of subkinds includeFor-Profit Organization,Fiat 500, andCivil Marriage. -
«role»: an anti-rigid sortal class whose instantiation depends on a relational condition. Examples includeStudent,Artist, andLegally Recognized Marriage. -
«phase»: an anti-rigid sortal class whose instantiation depends on a change in an intrinsic property. For example,Childmay be a subclass ofPersonwhose instances are people up to 12 years old. -
«category»: a rigid non-sortal class that classifies entities of different sorts. Examples includeAgent, which classifies instances of bothPersonandOrganization; andAnimal, which classifies instances of different species of animals, includingFelis Catus(domestic cat),Canis Lupus Familiaris(dog), andPanthera Leo(lion). -
«roleMixin»: an anti-rigid non-sortal class that classifies roles playable by individuals of different sorts. Examples includeOrganizer, as the agent that organizes some event, andAuthor, as the agent that holds the right to some intellectual property. -
«type»: a rigid class that classifies entities that have instances themselves (i.e., other classes). Examples includeCar Model, whose instances may includeFiat 500andTesla Model S; andEvent Type, whose instances may includeMusical EventandSports Event. -
«datatype»: a class that classifies values contained in a well-defined conceptual space, e.g., integer and real numbers (in their respective sets),Mass in Kilograms, andRGB Color. -
«enumeration»: a class that classifies values within a discrete finite conceptual space. Examples includeDay of Week, whose possible instances are the 7 days of the week; andDriver License Category, whose possible instances areA,B,C,D, andE.
The OntoUML association stereotypes used in the AlpineBits® Ontology are:
-
«mediation»: an existential dependence relation that connects relators to the entities they bind. For example, instances of the relatorMarriagemediate instances of the classSpouse; instances of the relatorContractmediate instances of the classContract Party. -
«characterization»: an existential dependence relation that connects an aspect (e.g., a quality) to the entity it characterizes. For example, instances of the classColorcharacterize instances of the classPhysical Object. -
«material»: a relation that connects entities based on something dependent on these entities. For example, instances of the association "married with" connect instances of the classSpousethat have a marriage relationship dependent on them. -
«componentOf»: a part-whole relation that connects objects with their functional components. Examples include the composition relation between an instance ofCarand the instance ofEngineinstalled in it; the relation between an instance ofHuman Bodyand an instance ofHeart. -
«historicalDependence»a relation that binds entities because of an event that happened in the past. For example, an instance ofPlacemay be related through a historical dependence to an instance ofImage Objectthat is a representation of that place at a point in time. -
«instantiation»: a relation between two classes representing that instances of one may be classified by instances of the other. For example, the relation betweenCarandCar Model, which represents that every car is an instance of a car model.