예제 #1
0
def get_available_conditions():
    discrete_result = graph.query(conditions_query)
    continuous_result = graph.query(conditions_cont_query)
    response = {}
    i = 0
    for row in discrete_result:
        response[i] = {'device':row[0], 'variable':row[1]}
        i += 1
    for row in continuous_result:
        response[i] = {'device':row[0], 'variable':row[1], 'unit':row[2]}
        i += 1

    return response
def get_available_conditions():
    discrete_result = graph.query(conditions_query)
    continuous_result = graph.query(conditions_cont_query)
    response = {}
    i = 0
    for row in discrete_result:
        response[i] = {'device': row[0], 'variable': row[1]}
        i += 1
    for row in continuous_result:
        response[i] = {'device': row[0], 'variable': row[1], 'unit': row[2]}
        i += 1

    return response
예제 #3
0
def test_conditions(measurement):
    measurement_str = measurement["@id"]
    var_str = measurement["dev:valueOf"]

    conditions_str = """
    PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
    PREFIX auraTask: <https://raw.githubusercontent.com/AuraMiddleware/aura-semantics/master/semantics/ontologies/AuraTask#>
    PREFIX auraDev: <https://raw.githubusercontent.com/AuraMiddleware/aura-semantics/master/semantics/ontologies/AuraDevice#>
    PREFIX variable: <"""+var_str+""">
    PREFIX measurement: <"""+measurement_str+""">

    SELECT DISTINCT ?condition ?minValue ?maxValue ?value
    WHERE {
        measurement: auraDev:Value ?value .
        ?condition auraTask:enforces variable: .
    	?condition auraTask:Range:MinValue ?minValue .
        ?condition auraTask:Range:MaxValue ?maxValue .
        FILTER(?value < ?minValue || ?value > ?maxValue)
    }
    """

    result = graph.query(conditions_str)
    i = 0
    for row in result:
        i += 1
        print("violated condition #" + str(i))
        print(row[0])#condition?
        print(row[1])#minValue
        print(row[2])#maxValue
        print(row[3])#value
def test_conditions(measurement):
    measurement_str = measurement["@id"]
    var_str = measurement["dev:valueOf"]

    conditions_str = """
    PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
    PREFIX auraTask: <https://raw.githubusercontent.com/AuraMiddleware/aura-semantics/master/semantics/ontologies/AuraTask#>
    PREFIX auraDev: <https://raw.githubusercontent.com/AuraMiddleware/aura-semantics/master/semantics/ontologies/AuraDevice#>
    PREFIX variable: <""" + var_str + """>
    PREFIX measurement: <""" + measurement_str + """>

    SELECT DISTINCT ?condition ?minValue ?maxValue ?value
    WHERE {
        measurement: auraDev:Value ?value .
        ?condition auraTask:enforces variable: .
    	?condition auraTask:Range:MinValue ?minValue .
        ?condition auraTask:Range:MaxValue ?maxValue .
        FILTER(?value < ?minValue || ?value > ?maxValue)
    }
    """

    result = graph.query(conditions_str)
    i = 0
    for row in result:
        i += 1
        print("violated condition #" + str(i))
        print(row[0])  #condition?
        print(row[1])  #minValue
        print(row[2])  #maxValue
        print(row[3])  #value