Even though the idea of using features to unify for largo-scale computer-integrated manufacturing systems has often been proposed, no current system has been able to achieve this goal. This negative result can be explained in part by the fact that what appears to be at the outset a simple matter, turns out to have unanticipated complexity. Features are very hard to get a grip on! There are many lists of features, but nothing has yet emerged which could be plausibly put forward u s full-blown theory of features, in this paper, I will attempt to present a preliminary, rough-cut version of such a theory by outlining what ! believe to be its main components. Up to now, most studies of featuro~ have assumed that features are chunks of geometry. But it is proposed in this paper that the kernel of features is not geometric, but topological. Features are best represented as undirected planar graphs whose nodes may be assigned expressions that can be subsequently evaluated. Taken collectively, the node evaluation process will then yield suitable geometric interpretations. There are many ways to do this, the most direct of which is to require that geometric interpretation functions map nodes onto points and edges onto curves whose boundaries are the images of the nodes.