Managing interactions between computer users' context models
First Claim
1. A method in a wearable computer for an executing user characterization system to provide information about a current state of a user of the wearable computer, the user characterization system modeling the current state with multiple state attributes and including state server modules (SSMs) to supply values for the state attributes, state client modules (SCMs) to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, each of the multiple state attributes having a distinct local name used by the SSMs, the SCMs and the intermediary module, the method comprising:
- under control of each SSM, generating values for at least one of the multiple state attributes; and
sending generated values for a state attribute to the intermediary module along with an indication of that state attribute using the local name of that state attribute;
under control of each SCM, requesting from the intermediary module values for at least some of the state attributes that are indicated using the local names of those state attributes; and
receiving at least some of the requested values from the intermediary module; and
under control of the intermediary module, facilitating exchange of values by, receiving the sent values for the indicated state attributes from the SSMs and storing the received values in a manner associated with those indicated state attributes;
receiving from a first other characterization system an indication of a first attribute and at least one value for the indicated first attribute, the first other characterization system executing on another computer to model a current state related to that computer;
storing the received first attribute value by determining whether the indication of the first attribute corresponds to one of the multiple state attributes having a local name that differs from that indication, and when the first attribute is determined to correspond to the one state attribute having the differing local name, storing the received first attribute value in a manner associated with the one state attribute having the differing local name; and
receiving from the SCMs the requests for values of state attributes indicated using the local names of the state attributes, and sending to the SCMs stored values that are associated with those indicated state attributes, so that the user characterization system can interact with modules and other characterization systems in order to exchange values of state attributes.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described for providing information about a current state that is represented with multiple attributes. In some situations, the providing includes a first computer receiving indications of multiple characterization modules, each characterization module executing on a computer to model an aspect of a current state related to that computer; receiving an indication of one of the multiple attributes of the represented current state; determining multiple of the characterization modules whose modeled aspects are related to the indicated one attribute; and gathering information about the modeled aspects related to the indicated one attribute from the determined characterization modules so that a value for the indicated one attribute can be generated based on the gathered information.
109 Citations
126 Claims
-
1. A method in a wearable computer for an executing user characterization system to provide information about a current state of a user of the wearable computer, the user characterization system modeling the current state with multiple state attributes and including state server modules (SSMs) to supply values for the state attributes, state client modules (SCMs) to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, each of the multiple state attributes having a distinct local name used by the SSMs, the SCMs and the intermediary module, the method comprising:
-
under control of each SSM, generating values for at least one of the multiple state attributes; and
sending generated values for a state attribute to the intermediary module along with an indication of that state attribute using the local name of that state attribute;
under control of each SCM, requesting from the intermediary module values for at least some of the state attributes that are indicated using the local names of those state attributes; and
receiving at least some of the requested values from the intermediary module; and
under control of the intermediary module, facilitating exchange of values by, receiving the sent values for the indicated state attributes from the SSMs and storing the received values in a manner associated with those indicated state attributes;
receiving from a first other characterization system an indication of a first attribute and at least one value for the indicated first attribute, the first other characterization system executing on another computer to model a current state related to that computer;
storing the received first attribute value by determining whether the indication of the first attribute corresponds to one of the multiple state attributes having a local name that differs from that indication, and when the first attribute is determined to correspond to the one state attribute having the differing local name, storing the received first attribute value in a manner associated with the one state attribute having the differing local name; and
receiving from the SCMs the requests for values of state attributes indicated using the local names of the state attributes, and sending to the SCMs stored values that are associated with those indicated state attributes, so that the user characterization system can interact with modules and other characterization systems in order to exchange values of state attributes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for providing information about a current state that is represented with multiple state attributes, each of the multiple state attributes having a local identifier, the method comprising:
-
under control of a computing system, receiving from a remote module an indication of a state attribute and an instruction related to that state attribute;
determining whether the indication of the state attribute is one of the local identifiers; and
when the indication of the state attribute is not one of the local identifiers, translating the indication of the state attribute into one of the local identifiers;
obtaining from a source an indication of a value for the indicated state attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the one local identifier for the indicated state attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided; and
when it is determined that the indicated value is appropriate, providing the indicated value to the remote module. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A computer-readable medium whose contents cause a computing device to provide information about a current state that is represented with multiple attributes, each of the multiple attributes having a local name, by performing a method comprising:
-
receiving from a module an indication of one of the multiple attributes of the represented current state and an instruction related to a value for that one attribute;
determining whether the indication of the one attribute is one of the local names; and
when the indication of the one attribute is not one of the local names, translating the indication of the one attribute into one the local names;
obtaining from a source an indication of a value for the indicated attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the one local name for the indicated attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate; and
when it is determined that the indicated value is appropriate, performing the instruction for the attribute having that one local name. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51)
-
-
52. A computing device for providing information about a current state that is represented with multiple attributes, each of the multiple attributes having a local identifier, comprising:
-
an input module that is capable of receiving from a remote module an indication of one of the multiple attributes of the represented current state and an instruction related to a value for that one attribute; and
a response module that is capable of determining whether the indication of the one attribute is one of the local identifiers, and of, when the indication of the one attribute is not one of the local identifiers, translating the indication of the one attribute into one of the local identifiers, obtaining from a source an indication of a value for the indicated attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the one local identifier for the indicated attribute, determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided, and when it is determined that the indicated value is appropriate, performing the instruction for the attribute having the one local identifier. - View Dependent Claims (53, 54, 55, 56, 57)
-
-
58. A computing device for providing information about a current state that is represented with multiple attributes, each of the multiple attributes having a local identifier, comprising:
-
means for receiving from a remote module an indication of one of the multiple attributes of the represented current state and an instruction related to a value for that one attribute;
means for determining whether the indication of the one attribute is one of the local identifiers; and
means for, when the indication of the one attribute is not one of the local identifiers, translating the indication of the one attribute into one of the local identifiers, obtaining from a source an indication of a value for the indicated attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the one local identifier for the indicated attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided; and
when it is determined that the indicated value is appropriate, performing the instruction for the attribute having the one local identifier.
-
-
59. A computer-readable medium containing instructions that when executed cause a portable computing device to provide information about a context that is modeled with multiple context attributes each having a distinct name, by performing a method comprising:
-
receiving a request related to a value for a context attribute that is identified with an indicated name;
when the indicated name is related to the name of one of the multiple context attributes, responding to the received request in a manner related to that one context attribute; and
when the indicated name is not related to the name of one of the multiple context attributes, determining the name of one of the multiple context attributes to which the indicated name corresponds;
obtaining from a source an indication of a value for the one context attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the determined name for the one context attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided; and
when it is determined that the indicated value is appropriate, responding to the received request in a manner related to the context attribute having the determined name.
-
-
60. A portable computer for providing information about a context that is represented with multiple modeled attributes each having a distinct name, comprising:
-
a request receipt module that is capable of receiving a request related to a value for a context attribute that is identified with an indicated name; and
a request response module that is capable of responding to the received request in a manner related to one of the multiple context attributes when the indicated name is the name of that one context attribute, and of, when the indicated name is not the name of one of the multiple context attributes, determining the name of one of the multiple context attributes to which the indicated name corresponds;
obtaining from a source an indication of a value for the one context attribute and of descriptive information indicating a time at which the indicated value is most accurate, the obtaining using the determined name for the indicated state attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided; and
when it is determined that the indicated value is appropriate, responding to the received request in a manner related to the context attributes having the determined name.
-
-
61. A computer-readable medium whose contents cause a wearable computing device for an executing user characterization system to provide information about a current state of a user of the wearable computing device, the user characterization system modeling the current state with multiple state attributes and including state server modules (SSMs) to supply values for the state attributes, state client modules (SCMs) to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, each of the multiple state attributes having a distinct local name used by the SSMs, the SCMs and the intermediary module, by performing a method comprising:
-
under control of each SSM, generating values for at least one of the multiple state attributes; and
sending generated values for a state attribute to the intermediary module along with an indication of that state attribute using the local name of that state attribute;
under control of each SCM, requesting from the intermediary module values for at least some of the state attributes that are indicated using the local names of those state attributes; and
receiving at least some of the requested values from the intermediary module; and
under control of the intermediary module, facilitating exchange of values by, receiving the sent values for the indicated state attributes from the SSMs and storing the received values in a manner associated with those indicated state attributes;
receiving from a first other characterization system an indication of a first attribute and at least one value for the indicated first attribute, the first other characterization system executing on another computer to model a current state related to that computer;
storing the received first attribute value by determining whether the indication of the first attribute corresponds to one of the multiple state attributes having a local name that differs from that indication, and when the first attribute is determined to correspond to the one state attribute having the differing local name, storing the received first attribute value in a manner associated with the one state attribute having the differing local name; and
receiving from the SCMs the requests for values of state attributes indicated using the local names of the state attributes, and sending to the SCMs stored values that are associated with those indicated state attributes. - View Dependent Claims (62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75)
-
-
76. A wearable computing device configured to execute a user characterization system so as to provide information about a current state of a user of the wearable computing device, the executing user characterization system modeling the current state with multiple state attributes and including state sever modules to supply values for the state attributes, state client modules to process values for the state attributes, and an intermediary module to facilitate exchange of state attribute values, each of the multiple state attributes having a distinct local name used by the state server modules, the state client modules and the intermediary module, comprising:
-
multiple state server modules (SSMs) that are each configured to generate values for at least one of the multiple state attributes and to send generated values for a state attribute to the intermediary module along with an indication of that state attribute using the local name of that state attribute;
multiple state client modules (SCMs) that are each configured to request from the intermediary module values for at least some of the state attributes that are indicated using the local names of those state attributes and to receive at least some of the requested values from the intermediary module; and
an intermediary module that is configured to facilitate exchange of values by, receiving the sent values for the indicated state attributes from the SSMs and storing the received values in a manner associated with those indicated state attributes;
receiving from a first other characterization system an indication of a first attribute and at least one value for the indicated first attribute, the first other characterization system executing on another computer to model a current state related to that computer;
storing the received first attribute value by determining whether the indication of the first attribute corresponds to one of the multiple state attributes having a local name that differs from that indication, and when the first attribute is determined to correspond to the one state attribute having the differing local name, storing the received first attribute value in a manner associated with the one state attribute having the differing local name; and
receiving from the SCMs the requests for values of state attributes indicated using the local names of the state attributes, and sending to the SCMs stored values that are associated with those indicated state attributes.
-
-
77. A method in a computer for providing information about a current state that is represented with multiple state attributes, each of the multiple state attributes having a local identifier, the method comprising:
-
under control of the computer, receiving from a remote module an indication of estate attribute;
determining whether the indication of the state attribute is one of the local identifiers; and
when the indication of the state attribute is not one of the local identifiers, translating the indication of the state attribute into one of the local identifiers;
obtaining from a source an indication of a value for the indicated state attribute and of descriptive information indicating a time at which the indicated value is most accurate and a value for an uncertainty of the indicated value, the obtaining using the one local identifier for the indicated state attribute;
determining based at least in part on the descriptive information whether the indicated value is appropriate to be provided; and
when it is determined that the indicated value is appropriate, providing the indicated value and the uncertainty value to the remote module. - View Dependent Claims (78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92)
-
-
93. A computer-readable medium whose contents cause a computing device to provide information about a current state that is represented with multiple attributes, each of the multiple attributes having a local name, by performing a method comprising:
under control of the computing device, receiving from a module an indication of one of the multiple attributes;
determining whether the indication of the one attribute is one of the local names; and
when the indication of the one attribute is not one of the local names, translating the indication of the one attribute into one of the local names;
obtaining a value for the one attribute and an indication of descriptive information indicating a time at which the obtained value is most accurate and a value for an uncertainty of the obtained value, the obtaining using the one local name for the attribute;
determining based at least in a part on the descriptive information whether the obtained value is appropriate; and
when it is determined that the obtained value is appropriate, performing an instruction related to the one attribute in a manner that is based at least in part on the obtained value and/or on the descriptive information. - View Dependent Claims (94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105)
-
106. A computing device for providing information about a state that is represented with multiple state attributes, each of the multiple state attributes having a local name, comprising:
-
an input module that is capable of receiving from a remote module an indication of a name corresponding to one of the multiple state attributes of the represented state and an instruction related to that one attribute; and
a response module that is capable of determining whether the indicated name of the one attribute is one of the local names, and of, when the indicated name is not one of the local names, renaming the indicated name into the local name of the one attribute to which the indicated name corresponds;
obtaining a value for the one attribute and an indication of descriptive information indicating a time at which the indicated value is most accurate and a value for an uncertainty of the obtained value, the obtaining using the local name of the one attribute;
determining based at least in part on the descriptive information whether the obtained value is appropriate; and
if it is determined that the obtained value is appropriate, providing the obtained value to the remote module. - View Dependent Claims (107, 108, 109, 110)
-
-
111. A method for a computing device to provide information about a context that is modeled with multiple context attributes each having a distict name, the method comprising:
under control of the computing device, receiving a request for a value of a context attribute that is identified with an indicated name;
if the indicated name is the name of one of the multiple context attributes, responding to the received request by providing a value for that one context attributes, determining one of the multiple context attributes to which the indicated name corresponds;
obtaining a value for the determined context attribute and an indication of descriptive information indicating a time at which the obtained value is most accurate, the obtaining using the name for the determined context attribute;
determining based at least in part on the descriptive information whether the obtained value is appropriate; and
when it is determined that the obtained value is appropriate, responding to the received request by providing the obtained value for the determined context attribute. - View Dependent Claims (112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126)
Specification