A family of components characterized by a defining abstraction and the decisions that are needed to distinguish among the members of the family (or to extract a concrete component).
A component that serves only as a base component for other components to extend. An abstract component cannot be installed and only an abstract component is permitted to declare abstract child elements.