2014-03-01 5 views
3

내 온톨로지에는 "산"이라는 개념과 "마을"개념의 인스턴스 인 "포트 세르 베르"의 개념 인 개인 "그림 조안"이 있습니다. 나는 "pic Joan"에서 "Cerbère port"로의 "지배"관계를 가지고있다. (산이 마을의 가까이에있는 것으로 인식되어 "지배한다"는 의미에서).OWL에서 관계 속성을 어떻게 정의합니까?

사실, 나는 조안이 포트 세르베르를 1.5 마일 NW의 거리에서 지배하고 있다는 사실을 나타낼 필요가 있습니다.

따라서 논리적으로는 "거리 = 1.5M", "방향 = NW"데이터 속성을 "지배"해야합니다.

그러나 AFAIK, OWL 은 관계에 대한 속성을 제공하지 않습니다. 관계에 대한 범위와 도메인을 정의 할 수 있다는 것을 알고 있습니다. 그러나 범위와 도메인에 관한 것이 아니라 서로 다른 인스턴스간에 가져올 때 동일한 관계가 다른 속성 값을 갖습니다.

OWL에서이 정보를 어떻게 표현 하시겠습니까?

(보조 질문 : 관계에 대한 속성을 정의 할 수 있습니다 다른 온톨로지 형식주의가 그리고 네 경우, 그 형식주의에 온톨로지를 관리 할 수있는 피보호자 같은 도구가?)이 사용

답변

0

가장 일반적인 패턴 경우 새로운 클래스를 소개하는 것입니다, RelativePosition 말 :

RelativePosition a Class. 
relationType a DataProperty. 
relationType domain RelativePosition. 
// relationType values not specified here: might be "dominant","overlooking"... 
// depending on your needs, this might need more structure. 
firstFeature a ObjectProperty. 
firstFeature domain RelativePosition. 
secondFeature a ObjectProperty. 
secondFeature domain RelativePosition. 
// both properties can appear multiple times for one instance of RelativePosition 
// to group sets of entities which share a relative position 

부동산 거리, 또는 다른 특성을 소개하고 추가 할 수 있습니다.

편집 : 아래 여호수아의 주석에서 링크를 복사 : n 차 관계, 내가 관계에 대한 속성을 정의 할 수 있습니다 다른 온톨로지 형식주의가 here

+0

답변 해 주셔서 감사합니다. 실제로 그렇게하는 것은 효과가 있지만,이 끔찍하게 복잡하지는 않습니까? 왜냐하면 당신의 접근 방식은 모든 클래스가 그것이 개념인지 관계인지를 말하기위한 데이터 속성을 가져야한다는 것을 의미하기 때문입니다. 그리고 "A에서 시작하는 모든 관계 찾기"와 같은 간단한 작업을 원한다면 "B -> A를 모두 찾는다"는 의미는 언급 된 데이터 속성이 B 계의 값 "관계"를 갖고있어 지루하다. OWL에서 더 쉽게 할 수있는 방법이 없다면 더 쉽고 Protégé 같은 도구를 갖춘 다른 형식주의가 있을까요? – yannis

+3

@yannis 여기에서하는 일은 근본적으로 n-ary 관계를 표현하려고합니다. W3C는이를 수행하는 방법에 대한 제안을하고있다 : [시맨틱 웹에서 N-ary 관계 정의하기] (http://www.w3.org/TR/swbp-n-aryRelations/). 일반적으로, 당신은 당신이 신경을 쓰는 실제 트리플이 더 이상 데이터에 "정말로"있지 않기 때문에) 불필요한 것들을 수정하거나 여분의 데이터를 첨부 할 수있는 관계를 나타내는 개체를 생성해야합니다. 추가 데이터 유형마다 도메인 및 범위가있는 특정 속성을 반드시 선언 할 필요는 없습니다. –

+0

위 링크를 이용해 주셔서 감사합니다. (사용 사례 1 : 관계를 설명하는 추가 속성) – yannis

0

참조?

주제지도를 살펴 보셨습니까?