{'fraction_non_alphanumeric': 0.022058823529411766, 'fraction_numerical': 0.002352941176470588, 'mean_word_length': 5.465779467680608, '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}}
Automated Generation of SADI Web Services for Clinical Intelligence using Ruled-Based Semantic Mappings

We present a framework that automates the generation of SADI semantic web services from declarative service descriptions and semantic mappings to relational data. Mappings are specified in a Datalog sublanguage of Positional-Slotted Object-Applicative (PSOA) RuleML. We outline a novel methodology, a system architecture, and a prototype implementation for service generation. A proof-of-concept implementation and preliminary evaluation of the approach was conducted by generating a set of SADI services over a database representing a fragment of a hospital research data warehouse. These automatically generated fully functional services are used to answer simple SPARQL queries. Infection control practitioners involved in surveillance for Hospital-Acquired Infections (HAI) need to access multiple sources of clinical data in relational databases. Ad-hoc retrieval of information from these databases requires knowledge of query languages like SQL, albeit surveillance and decision making would be more efficient if practitioners could retrieve relevant data without IT support. Semantic Querying facilitates self-service querying by non-technical users as described recently in HAIKU [1], where SADI Semantic Web services were deployed on relational databases to provide access to HAI-related data from The Ottawa Hospital (TOH) Data Warehouse (DW). While the method successfully enables domain experts (e.g. surveillance practitioners) to semantically query relational data using terminologies from domain specific ontologies, it requires prior scripting of Java code and SQL queries to operationalize the SADI Web services. This is labor-intensive, error-prone, and mandates the availability and involvement of surveillance practitioners to consult with the IT personnel during service creation. As such, the process is a good target for automation. Expanding on our previous work [2], we present an architecture designed to support semantic query rewriting Fig. 1, where SADI Semantic Web service code is generated automatically from declarative input and output descriptions, and a semantic mapping of the source data in PSOA RuleML [3]. Our implementation of the architecture facilitates Web service generation without human intervention and end users are able to run queries executing the generated services using SADI query engines, such as SHARE and HYDRA [1] . Fig. 1: Architecture supporting the automation of SADI Semantic Web service generation The service generation process relies on four distinct modules working together: a Semantic Mapping Module representing the correspondence of a DB schema to a domain ontology, a Service Description Module where service inputs and outputs are formalized, an SQL-template Query Generator Module, and a Service Generator Module to output executable Java code for a SADI web service. Generated services are then indexed in a SADI registry. In testing the query engine, HYDRA was able to discover the appropriate services in the registry and execute queries over the data. Based on a list of previously identified target use cases [1], our system is being further evaluated for its utilty in provisioning Semantic Querying to access HAI-related data from TOH DW. A list of frequently asked questions 5 is available for interested readers.