Я не эксперт, но у меня не было ответов с простым запросом GRAPHDB.Я создал в Protege небольшую онтологию:
CLASS VarValue SUBCLASS1 - HighVarValue SUBCLASS2 - LowVarValue
У класса HighVarValue есть общая аксиома класса: varDATA some xsd:float[>= 0.5f] SubClassOf HighVarValue
HighVarValue
varDATA some xsd:float[>= 0.5f] SubClassOf HighVarValue
У класса LowVarValue есть общая аксиома класса: varDATA some xsd:float[< 0.5f] SubClassOf HighVarValue
LowVarValue
varDATA some xsd:float[< 0.5f] SubClassOf HighVarValue
Экземпляр класса VarValue имеет значение 100.0f с varDATA dataProperty (изображение 2).
VarValue
100.0f
varDATA
Вывод с Protege (изображение3) подходит для простого запроса:
select ?x WHERE { ?x a :HighVarValue . }
Но, используя GRAPHDDB с RuleSet OWL2-QL или OWL2-RL, результат того же запроса будет пустым.
Я пропустилчто-то?Большое спасибо.
Подкласс HighVarValue, проверяющий значение экземпляра VarValue: actualValue
Экземпляр фактическое значение с dataProperty varDATA = 100.0f
После рассуждения мы можем увидеть: actualValue rdf: type HighVarvalue