An exception thrown when an error occurs inside the Taste engine.
Implementations of this interface have state that can be periodically refreshed. For example, an implementation instance might contain some pre-computed information that should be periodically refreshed. The Refresh(IList IRefreshable ) method triggers such a refresh.
All Taste components implement this. In particular, IRecommenders do. Callers may want to call Refresh(IList IRefreshable ) periodically to re-compute information throughout the system and bring it up to date, though this operation may be expensive.
A simple enum which gives symbolic names to the ideas of "weighted" and "unweighted", to make various API calls which take a weighting parameter more readable.