An EngineeringConnection is an EngineeringComponent that represents a connection relationship between two other EngineeringComponents. It is a reification of the Predicate connectedEngineeringComponents. That means that whenever this Predicate holds between two EngineeringComponents, there exists an EngineeringConnection. The practical reason for reifying a relationship is to be able to attach other information about it. For example, one might want to say that a particular connection is associated with some shared parameters, or that it is of a particular type. EngineeringConnections are EngineeringComponents and can therefore be an engineeringSubcomponent of other EngineeringComponents. However, to provide for modular regularity in component systems, EngineeringConnections cannot be connected. For each pair of EngineeringComponents related by connectedEngineeringComponents, there exists at least one EngineeringConnection. However, that object may not be unique, and the same EngineeringConnection may be associated with several pairs of EngineeringComponents.