A context is a model used by a service to perceive and interpret the world. It is created via the specification of an environment, which is how the context pre-configures itself in terms of status inference policies, plugins, and the service owner.

Within a process, a spatial boundary, in which there are multiple services, there will be one context for each service. Each service owns a context that reflects what it sees in terms of signaling by services, including itself.

Because a service cannot be constructed before the context, the name of the owning service is passed as a property within the environment used to build the context.

There are two types of services within a context. The first type of service is considered local if its name is an extension of the owning service name passed by way of the environment. The second type, having a different namespace prefix than that of the owning service, is considered remote.

The context effectively constructs a service level management model of the services from the signals captured which are then used to infer the operational status of each service created by the context.

The context interface has three basic functions: