{'fraction_non_alphanumeric': 0.02135561745589601, 'fraction_numerical': 0.0, 'mean_word_length': 5.23121387283237, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
AUIT: Adaptable User Interface Technology, with Extended Java Server Pages

We describe a new approach to providing adaptable thin client interfaces for web-based systems that allows a developer to specify a web-based interface using a device-independent mark-up language embedded in conventional Java Server Pages. At run-time this single interface description is used to automatically provide an interface for multiple web devices e.g. desk-top HTML and mobile WML-based systems, as well as highlight, hide or disable interface elements depending on the current user and user task. Our approach allows developers to more easily construct and maintain web-based user interfaces than other current approaches while utilising their existing server-side web components. We describe the software architecture of our system, its implementation using Java Server Page custom tag libraries, and an example application of our technique. We report our experiences using the technology to build three web-based applications and the results of two empirical studies of its effectiveness.