나는 Protege를 처음 접했기 때문에 나는 매우 기본적인 질문을 가지고있다. 나는 Child
과 Parent
클래스를 가지고 있습니다. Child
의 서브 클래스는 Girl
입니다.Pellet과 HermiT로 Protege의 유니버설 정량 이해하기
child1
는 child2
는 Child
및 anna
및 peter
가지고있는 타입 두 종류 Parent
을 가지고, 유형 Girl
있습니다. 또한 더 이상의 특성이없는 anna isParentOf child1
및 peter isParentOf child2
관계가 있습니다.
이제 ParentOfGirl
클래스를 Parent and isParentOf only Girl
과 같도록 정의하려고합니다. 추론자가이 새로운 유형을 가지고 있다고 생각한다면 anna
이 될 것입니다.
Inverse functional
속성을 isParentOf
에 추가했습니다. 부모가 자식을 두 명 이상 가질 수 있기 때문입니다. 그런 다음 Symmetric
을 관계에 추가하면 anna
은 ParentOfGirl
유형이지만 대칭을 사용하려면 isParentOf
을 갖고 싶지 않습니다.
내가 대칭없이 위의 의미에서 보면,이 참조 :
ParentOfGirl ≡ {안나, 피터} ⋂ {X의 ε 올빼미 : 것을 | 만약 ∀y (X, Y) ε isParentOf 후 Y ε 여자}
자식 1의 ε 자식과 자식 1 ε 여자
isParentOf ≡ {(안나 자식 1), (베드로 자식 2)}
그런 다음 anna
과 관련하여 Child
유형의 유일한 개인이고 Girl
유형도있는 child1
개인입니다. 추론자가이 경우 오른쪽에서 왼쪽으로 만 관계를 볼 수있는 것으로 보입니다. 왜냐하면 isParentOf
이 대칭이면 anna
을 추론하기 때문입니다. 또한, peter
도 child2와의 관계에 없으면 ParentOfGirl
이 될 것으로 예상됩니다. 그러나 이것은 또한 일어나지 않습니다.
이유식 (Pellet 또는 HermiT)에서 anna
이 ParentOfGirl
으로 표시되지 않는 이유는 무엇입니까?
OWL은 OWA (Open World Assumption)를 따릅니다. 즉, 온톨로지에서 '안나'는 소녀가 아닌 다른 자식 일 수 있습니다. 추론자가이 OWA를 따르고 'anna'는'ParentOfGirl' 유형이라고 추론 할 수 없습니다. – AKSW
또한 나를 위해 온톨로지의 의미가 명확하지 않습니다. 'isParentOf'가 역으로 기능하는 것이 어떨까요? – AKSW
OWA가 아무 것도 변경하지 않을 것으로 기대합니다.지식베이스 KB = {PO (a, p)}가 있고 KB α = ∀x.POG (x, p)로부터 추론하고 싶다면 KB의 모든 해석이 α를 만족하므로 True가됩니다. 'isParentOf'의 정의가 PO와 다른 이유는 무엇입니까? – marli