2016-08-08 14 views
1

개인 "곡물"과 "과일"이 들어있는 "음식"클래스가 있다고 가정 해 보겠습니다. 내가 곡을 선택합니다 나는 개인 SWRL : 규칙을 특정 개인으로 제한

(class) Food 
    (ind_1) Grain food_type ---> "grain_food" 
    (ind_2) Fruit food_type ---> "fruit_food" 

food_type 데이터 속성을 지정할 수 있으며,이 코드를 실행 : 내가없이 ( Grain 개별 선택)이 작업을 수행하려는 경우

Food(?x)^food_type(?x,"grain_food") -> sqwrl:select(?x) 

하지만 무엇을 food_type 속성에 필요 한가? 그 이름으로 특정 개인을 직접 가리킬 수 있습니까?

답변

3

당신이 요구하는 것이 명확하지 않지만, 그렇습니다. SWRL 규칙에 개인을 사용할 수 있습니다. 당신이 클래스 C에서 개별 C이있는 경우, 예를 들어, 당신은 할 수 있습니다 :

        C (C) longrightarrow; sqwrl : 선택

sqwrl : 선택은 반드시 변수가 필요하지 않습니다 (즉, 개인을 직접 수락 할 수있는 한). 괜찮을 것입니다. 개인에게 직접 반대는, 변수를 필요로하는 경우 swrbl:equal처럼, 나는 당신이 평등 술어의 어떤 종류를 사용할 수있는 것 같아요 (이는 내 생각, 의도에 대해 갈 것) :

        swrlb을 : 동일 (c,? x) & longrightarrow; sqwrl : select (? x)

+0

'sqwrl : select'는 SWRL 쿼리 언어의 내장 술어입니다. SQWRL – AKSW

+0

@AKSW 이에 따라 업데이트됩니다. –