1. A computer implemented method for managing resources in a data processing system the method including the steps of: providing a plurality of specialized classes modeling a resource in the data processing system, the resource participating in management of a license for an application; representing the resource in a computer memory by a plurality of specialized objects wherein each specialized object in the plurality of specialized objects represents the resource, each specialized object instantiating a corresponding specialized class from the plurality of specialized classes, each specialized object being identified by a corresponding specialized name, each specialized class being distinct from another specialized class modeling the resource such that specialized objects corresponding to the distinct specialized classes represent different aspects of the resource; associating an edge class with the specialized classes; associating the resource with a corresponding edge object instantiating the edge class, each edge object being identified by a corresponding edge name; associating each specialized object with the edge name of the corresponding edge object, the specialized objects associated with each edge name representing the same corresponding resource, wherein the resource comprises a database, wherein a first specialized object together with a corresponding first edge name models the resource as a generic database and a second specialized object together with a corresponding second edge name models the resource as a relational database; and counting the plurality of specialized objects as representing a single instance of the same corresponding resource during the license management of the application.