=== Base Template !RelationOfIndividualsToIndividuals === [[br]]This is a template for expressing that a relation relates individuals only. [[br]]!RelationOfIndividualsToIndividuals(a) means that a is a relation of one of the subtypes of !ClassOfRelationship, and that its domain and range (as determined by attributes according to the entity type) are both first-order classes. [[br]] [[br]]Roles: [[br]]1 hasRelation !ClassOfRelationship Axiom: {{{ RelationOfIndividualsToIndividuals(x) <-> ClassOfRelationship(x) & exists y1 exists y2(entityTriple(x, y1, y2) & ClassOfIndividual(y1) & ClassOfIndividual(y2)) . }}} NOTE The purpose of this unary template is in expressing a constraint on relations. The use of the disjunctive entityTriple template (annex C.3) in the defining axiom means this template is not suitable for introducing relations. NOTE The template language lacks the expressive power to fully capture the constraint intended for this template. A full expression would require universal quantification, stating that for every entity type to which the subject relation belongs, the attributes of the relation are first-order classes. Universal statements are beyond the scope of template definitions (cf. 5.2, annex H). The template still captures a useful approximation, because the intended constraint is satisfied given that the the subject relation has only one pair of attributes (i.e., has unique domain and range). This requirement is not captured in the ISO 15926-2 or template languages. EXAMPLE The expansion of !RelationOfIndividualsToIndividuals(Shaft Seal Connection) is a disjunctive statement that Shaft Seal Connection belongs to one of the subtypes of !ClassOfRelationship, with the appropriate attributes filled by first-order classes.