{'fraction_non_alphanumeric': 0.02026431718061674, 'fraction_numerical': 0.0, 'mean_word_length': 5.10752688172043, '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}}
Situational context in the programmable world

As the capabilities of smart things increase, the greater the number of scenarios in which they can be used, and the greater the need to develop Web of Things (WoT) systems supporting these situations. Currently, many WoT systems cover predefined scenarios in which users have to configure how smart things behave, depending on their specific needs at a given moment. However, this makes users slaves of technology, being constantly aware of it for configuring it. Future WoT systems must be able to self-adapt to non-predefined situations and users, and their behavior should transparently emerge from the context, taking into account the needs of their users, but without requiring constant interaction with them. In this paper, a new Situational Context concept is placed to the emerging Programmable World, and a reference architecture for developing WoT systems capable of identifying the needs of their users in a particular situation is defined. This enables developers to build systems whose behavior is more conscious of their context, and self-adaptive to the people using them.