Supporting adaptive interfaces in a knowledge-based user interface environment | Synapse