{'fraction_non_alphanumeric': 0.016786570743405275, 'fraction_numerical': 0.0015987210231814548, 'mean_word_length': 5.520833333333333, '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': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Runtime Knowledge Graph Based Approach to Smart Home Application Development

Smart home is an important application area of the Internet of things (IoT). However, the diversification of smart home application scenarios increases the difficulty of understanding the scenarios for developers. And the heterogeneity of the programming interfaces of smart devices as well as the close coupling of the code to the underlying systems is still an important work for the developers. Furthermore, the complexity and variability of business requirements poses a great challenge to the development of applications logic. In this paper, we present a runtime knowledge graph based approach to smart home application development. First, a conceptual model describing the smart home scenarios is defined. Second, the manageability of smart devices is abstracted as runtime knowledge graphs that are automatically connected with the corresponding systems. Last, a method of automatically generating smart home applications is proposed. Our approach can reduce code by about 85 percent at least, and an experiment on a real-world application scenario demonstrates the feasibility, effectiveness, and benefits of the new approach to smart home application development.