Patent ID: 7421486

Claim:
A method of determining the context of a computing device comprising; determining whether any of a number of context providers are available to provide context information that can be processed by the computing device to ascertain its context by polling one or more of the context providers; receiving context information from one or more of the context providers that are determined to be available; and processing the context information on the computing device to determine the context of the computing device, wherein the processing of the information comprises: mapping the context information to a node on a hierarchical tree structure that is carried on the device, the hierarchical tree structure comprising multiple nodes that represent physical or logical entities; and traversing one or more nodes of the tree structure to ascertain a complete context, wherein the processing of the context information further comprises ordering the context providers in accordance with a trust parameter that is assigned to each context provider and defines a level of trust associated with the context provider, and a confidence parameter that provides a measure of a context provider's confidence in its context information; determining whether there are any conflicts with the context information and, if so, selecting only context information from certain ordered context providers; and decreasing, over time, the confidence parameter associated with a previously determined current context.