  Software product line engineering is a very common method for designing
complex software systems. Feature modeling is the most common approach to
specify product lines. The main part of a feature model is a special tree of
features called a feature diagram. Cardinality-based feature diagrams provide
the most expressive tool among the current feature diagram languages. The most
common characterization of the semantics of a cardinality-based diagram is the
set of flat multisets over features satisfying the constraints. However, this
semantics provides a poor abstract view of the diagram. We address this problem
by proposing another multiset theory for the cardinality-based feature diagram,
called the hierarchical theory of the diagram. We show that this semantics
captures all information of the diagram so that one can retrieve the diagram
from its hierarchical semantics. We also characterize sets of multisets, which
can provide a hierarchical semantics of some diagrams.
