import logging from urllib.error import URLError import arklog from SPARQLWrapper import SPARQLWrapper, JSON arklog.set_config_logging() prefixes = "\n".join(( "PREFIX dtf: ", "PREFIX owl: ", "PREFIX rdf: ", "PREFIX xsd: ", "PREFIX rdfs: ", )) # TODO Convert to test def query_0(): """""" sparql = SPARQLWrapper("http://localhost:8000") sparql.setReturnFormat(JSON) sparql.setQuery( prefixes + """ SELECT ?outlier ?outlier_value WHERE { BIND(dtf:outlier("data.csv", "2") AS ?outlier) } """ ) try: ret = sparql.query().convert() except URLError as e: logging.error(e) return if not ret: logging.info("No outliers!") for r in ret["results"]["bindings"]: logging.info(r) # TODO Convert to test def query_1(): """""" sparql = SPARQLWrapper("http://localhost:8000") sparql.setReturnFormat(JSON) sparql.setQuery( prefixes + """ SELECT ?outlier WHERE { SERVICE { SELECT ?outlier ?outlier_value WHERE { BIND(dtf:outlier("data2.csv", "1") AS ?outlier) } } } """ ) try: ret = sparql.query().convert() except URLError as e: logging.error(e) return if not ret: logging.info("No outliers!") for r in ret["results"]["bindings"]: logging.info(r) # TODO Convert to test def query_2(): """""" sparql = SPARQLWrapper("http://localhost:8000") sparql.setReturnFormat(JSON) sparql.setQuery( prefixes + """ SELECT ?outlier ?outlier_relation ?outlier_value WHERE { SERVICE { SELECT ?outlier ?outlier_relation ?outlier_value WHERE { BIND(dtf:outlier("rotation.csv", "2", "") AS ?outlier) } } } """ ) try: ret = sparql.query().convert() except URLError as e: logging.error(e) return if not ret: logging.info("No outliers!") for r in ret["results"]["bindings"]: logging.info(r) if __name__ == "__main__": query_0() query_1() query_2()