*PrincipalHostFn* | *documentation* A UnaryFunction that maps a Hole to the Object which is its principal host. The principle host of a Hole is its maximally *connected* host (a notion taken here to be defined only when the argument is a hole) | |

**has axiom** (=> (*equal* ?OBJ1 (*PrincipalHostFn* ?HOLE)) (forall (?OBJ2) (*<=>* (overlapsSpatially ?OBJ2 ?OBJ1) (exists (?OBJ3) (*and* (hole ?HOLE ?OBJ3) (*instance* ?OBJ3 SelfConnectedObject) (overlapsSpatially ?OBJ2 ?OBJ3))))))
| |

**has axiom** (=> (*equal* ?OBJ1 (*SkinFn* ?HOLE)) (forall (?OBJ2) (*<=>* (overlapsSpatially ?OBJ2 ?OBJ1) (exists (?OBJ3) (*and* (superficialPart ?OBJ3 (*PrincipalHostFn* ?HOLE)) (meetsSpatially ?HOLE ?OBJ3) (overlapsSpatially ?OBJ2 ?OBJ3))))))
| |

**has domain1** Hole | |

**has ***range* Object | |

**is an ***instance* of SpatialRelation | |

**is an ***instance* of UnaryFunction | |

Relation | **is first ***domain* of *domain* | |

**is first ***domain* of *domainSubclass* | |

**is first ***domain* of *holds* | |

**is first ***domain* of *subrelation* | |

**is first ***domain* of *valence* | |

**is second ***domain* of *subrelation* | |

BinaryRelation | **is first ***domain* of *DomainFn* | |

**is first ***domain* of *equivalenceRelationOn* | |

**is first ***domain* of *inverse* | |

**is first ***domain* of *irreflexiveOn* | |

**is first ***domain* of *partialOrderingOn* | |

**is first ***domain* of *RangeFn* | |

**is first ***domain* of *reflexiveOn* | |

**is first ***domain* of *totalOrderingOn* | |

**is first ***domain* of *trichotomizingOn* | |

**is second ***domain* of *inverse* | |

Function | **is first ***domain* of *AssignmentFn* | |

**is first ***domain* of *closedOn* | |

**is first ***domain* of *range* | |

**is first ***domain* of *rangeSubclass* | |

Class | **is third ***domain* of *domain* | |

**is third ***domain* of *domainSubclass* | |

Abstract | **is ***disjoint* from Physical | |