Proteg와 함께 온톨로지 작업을 시작했고 SWRL 규칙을 사용하는 방법을 이해하려고합니다. 나는 내가 어떤 결과물도 낼 수 없기 때문에 내가 개념을 얻지 못하거나 올바르게 취급하는 것이 두렵다.Pellet을 사용하여 Protegé 4.3에서 SWRL 규칙을 사용하는 방법
A, B 및 C라는 세 개인을 만들었습니다. 각 속성은 부울 범위가있는 테스트 속성으로 만들어졌습니다. 각각의 속성 어설 션 탭에서 값을 초기화 했으므로 test(A,true)
, test(B,true)
및 test(C,true)
입니다. 규칙이 작동하는 방식을 테스트하기 위해 다음과 같은 규칙을 만들었습니다 : test(A,true), test(B,true) -> test(C,false)
. 제가 이해하는 방법은 A와 B의 테스트 속성이 참이라면 C의 것이 틀릴 것입니다. 그렇게하기 위해 나는 추론 자 (Pellet)를 시작하지만 아무 일도 일어나지 않는다. 내 생각에, 추론자가 활동적이며 "일관성없는 온톨로지"메시지가 나타나지 않지만 C의 테스트 값은 변하지 않는다고합니다. 나는 이것이 정말로 간단한 혼란이 틀림 없다고 확신하지만 아무 곳에 나 찾아 규칙이 활성화되었는지를 확인할 수없는 것 같습니다.
미리 감사드립니다.
답변 해 주셔서 감사합니다. 그런 다음 속성 값을 초기화 한 다음 규칙 내에서 값을 변경하는 올바른 절차는 무엇입니까? – jmnavarro
규칙을 통해 주장 된 정보를 철회 할 수 없으며 단지 그렇게 작동하지 않습니다. 예를 들어,'test'의 값을'C'에 지정하지 않은 채로 지정해야하며, 항상 값을 유추하도록 규칙을 구성해야합니다. 그렇게하면'A' 나'B'에 대한 어설 션을 변경하면'C'에 대한'test'의 추론 된 값이 적절하게 변경됩니다. – Michael
좋아요, 데이터 어설 션은 제가 처음 생각한 것처럼 작동합니다 ... 그래서, OWL 및 SWRL을 사용하여 속성 값을 "초기화"(예 : Java에서와 같이 이해)하고 변경하여 규칙이 활성화 될 때 다른 값은 무엇입니까? – jmnavarro