An automatic method and apparatus for providing services on a computer
system. A set of services is established providing different
functionality for the computer system. With each of the set of services
an attribute is stored for identifying characteristics of the function of
each of the set of services. Then, the first set of services can be
retrieved by a first set of attributes which is specified irrespective of
any locales which may be defined in the computer system. Thus,
characteristics or attributes of most importance to a service may be used
to describe it and used for retrieval of such services. The establishing
of the first set of services includes building a structure which
references each of the first set of services. Retrieving may include
maintaining a reference to one of the services in the structure and
iterating through the structure in order to retrieve a subsequent one of
the services. An iterator may be created which is used to iterate though
the database of services and provide the services to application or
system programs.