The Sponsor-Selector Pattern Eugene Wallingford wallingf@cs.uni.edu Department of Computer Science University of Northern Iowa Cedar Falls, Iowa 50614-0507 (319) 277-8765 [ home ] (319) 273-2618 [ office ] Abstract: This pattern is intended as the first pattern in a pattern language for designing knowledge-based systems. It addresses the issue of dynamic control of problem solving -- how a system can dynamically select what to do next in the course of solving a problem. The Sponsor-Selector pattern provides a mechanism for selection that enables a system (1) to dynamically select from existing resources and (2) to fully integrate new resources on the fly at run-time. It is based on the idea of separating three responsibilities: recommending a resource, selecting among resources, and using a resource.