Patent ID: 7562095

Claim:
A computer storage medium having computer executable instructions embodied thereon that, when executed by a computing device, provide one or more Application Programming Interface (API) methods, the Application Programming Interface methods comprising: providing, by one or more APIs, a property management mechanism for associating on demand a dependency property with at least one object and for specifying metadata for the dependency property; providing, by the one or more APIs, functionality configured to access, validate or update the dependency property and an associated value of the dependency property only when the dependency property is queried; providing, by the one or more APIs, functionality that handles invalidation notifications for the dependency property; and defining, by the one or more APIs, behavior associated with the dependency property, wherein the dependency property is a defined type and is associated with a plurality of objects, wherein accessing or changing a value of the dependency property by one or more members of the plurality of objects, as the value of the dependency property relates to that one or more members of the plurality of objects, without affecting the value of the dependency property as the value of the dependency property relates to other members of the plurality of objects, and wherein an indication of validity of the value of the dependency property is referenced such that: responsive to the indication of validity indicating a dirty value, overriding the value of the dependency property, and responsive to the indication of validity not indicating a dirty value, not overriding the value of the dependency property, wherein overriding the value of the dependency property comprises determining the value of the dependency property at least partially responsive to metadata associated with the dependency property, via looking up in a hierarchy.