Object-oriented conceptual models strive to capture more semantics in order to better represent requirements of real-world applications. Aggregation is a powerful construct for semantic modeling. Intuitively, it relates a composite object to its component objects. This paper presents a new version of aggregation, with a generalized version of cardinality constraints and a new subcategorization of part relationships, with an associated transitivity rule. An implementation in C++ is also presented