{'fraction_non_alphanumeric': 0.016116035455278, 'fraction_numerical': 0.0, 'mean_word_length': 5.46875, '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}}
Towards pluggable discovery frameworks for mobile and pervasive applications

This paper proposes a component-based programming approach to discovery. In this approach, individual discovery protocols, access models and authentication mechanisms are represented as software components called handlers. Handlers are registered with and coordinated by a software framework called a discovery agent. Configured with a battery of handlers, a discovery agent answers query and advertisement requests on behalf of mobile and other applications and applies authentication and access control policies. Based on its set of handlers, a diversity of request types and formats can be routed, translated, and fulfilled by a discovery agent. Discovery agents can easily be reconfigured, adapted, and extended as new underlying discovery protocols or client request types must be supported. A discovery agent can operate as a Web service, and can be deployed by an enterprise to service discovery requests on behalf of visiting clients. A discovery agent can also operate as a trusted co-module running on a device, and is useful for supporting mobile applications which move among environments and must accommodate a diversity of local discovery protocols.