나는 간단한 대답이 없다고 생각되는 간단한 질문이 있습니다. 기본적으로 한 OWL 표현식 (#B)이 논리적으로 다른 표현식 (#A)에 뒤 따르는 것이 사실인지 확인하고 싶습니다. 즉, # A-> #B?OWL 표현 사이의 논리적 함축 관계를 확인 하시겠습니까?
이유는 현재 응용 프로그램 상태 (#StateRequirement)의 요구 사항을 설명하는 구조에 지식 기반 구조 (#KnowledgeStructure 클래스로 표현됨)를 일치시키는 응용 프로그램의 일치 알고리즘을 작성하고 있기 때문입니다.). 두 구조는 구조의 세 번째 종류 (#Model)의 상태에 대한 OWL 표현을 나타내는 문자열 값을 갖는 특성을 갖습니다. #Model에 적용되는 지식 구조가 #Model을 어떻게 변형 시킬지 표현하는 # KnowledgeStructure.PostCondition; # StateRequirement.GoalCondition은 응용 프로그램이 달성하고자하는 #Model 상태를 나타냅니다. 따라서 # KnowledgeStructure.PostCondition이 원하는 # StateRequirement.GoalCondition을 생성하는지 확인하여 #KnowledgeStructure가 #StateRequirement를 만족하는지 확인하고 싶습니다. 나는 이것을 추상적으로 표현할 수있다 : (# KnowledgeStructure.Postcondition => # StateRequirement.GoalCondition)> Match (#KnowledgeStructure, #StateRequirement). 덜 혼란스럽게 나는 이것을 #A와 #B가 유효한 OWL 표현식 인 ((#A -> #B) -> Match (#A, #B))로 표현할 수있다.
일반적으로 다음 규칙을 표현할 수 있습니다. "표현 #B가 #A 다음에 나오는 것이 사실이라면 일치 식 (#A, #B)도 참입니다" .
본질적으로 나의 질문은 이것입니다 : OWL에서 어떻게 그러한 규칙을 만들거나 실현해야합니까? 한 표현식이 다른 표현식에서 나오는 지 여부를 어떻게 테스트 할 수 있습니까? 또한, 기존의 추론 자들은이 관계가 명시 적으로 언급되지 않은 경우 두 표현 사이의 관계 #A -> #B를 결정할만큼 충분히 강력합니까?
당신이 더 당신이 "표현"에 의해 의미합니까 어떤 비트를 명확히 할 수 나를 :) 수정 주시기 바랍니다 OWL 스펙 (http://www.w3.org/TR/owl2-syntax/)의 용어를 사용한다. – Kaarel
물론, 저는 SWRL 규칙의 전례에 사용 된 종류의 조건식에 대해 실제로 말하고 있습니다. description '('i-object ')' \t | dataRange '('d-object ')' \t | individualvaluedPropertyID '('i-object i-object ')' \t | datavaluedPropertyID '('i-object d-object ')' \t | sameAs '('i-object i-object ')' \t | differentFrom '('i-object i-object ')' \t | builtIn '('내장 ID {d-object} ')' –