Described is a mechanism for providing scoped modular services (SMS)
through an API. A common set of services is provided by the API that may
be enabled or disabled by each component. The services are managed using
a property system in the same manner as element properties are used, such
as properties relating to text formatting. This helps to ensure fine
control and a high degree of customization for a user interface. The use
of the services is not limited to editing in the common sense of the
word. The SMS is a mechanism for controlling access to implementation of
services contained within a tree of components. Services may also be
created by developers that are managed by a service manager along with
the common services.