2014-10-12 5 views
0

OWL 온톨로지, Protege 5를가집니다. 모든 대상 클래스 D를 검색하기 위해 소스 클래스 S를 시작하고 싶습니다. 여기에서 S는 to- objectProperty를 통한 하나의 카디널리티 즉, S ([0 .. *] - 1) D는 연결되는 objectProperty와 무관합니다.Protege 5; 특정 클래스에 대한 하나의 카디널리티와 관련된 모든 클래스를 찾습니다.

S ⊑ =1r:D; 

S 내 소스 개념, D 변수 개념이고, R 변수 OBJECTPROPERTY입니다 :

은 DL에서는 비슷한 것입니다.

첫 번째 포인트 : 어떻게 이것을 Protege DL 쿼리에 사용 하시겠습니까?

두 번째 포인트 : 이러한 쿼리에는 추론자가 쿼리에 응답하려고 할 때 고려할 것으로 예상되는 속성 제한 유형은 무엇입니까? 예 : 카디널리티 제한, 기능적 특성, someValuesFrom, allValuesFrom?

감사합니다.

+0

답변을 게시했지만 변수의 범위를 약간 잘못 이해하고있을 수도 있음을 깨달았습니다. 당신은 S와 D에 대해 S에서 각각의 s가 각 객체 속성 p에 대해 D의 정확히 하나의 d와 관련되도록 요구하고 있습니까? 아니면 당신은 S와 D에 S의 각 s가 정확하게 하나의 D와 관련되도록 요구하고 있습니까? 예를 들어 (= 1 p.D) 및 (= 1 q.D)를 가질 수 있지만 일부는 p (s, d1) 및 q (s, d2)와 같을 수 있습니다. 그러면 s는 두 개의 D와 관련이 있습니다. 그 확인은? owl : topObjectProperty는 * 모든 쌍의 개인과 관련이 있기 때문에 첫 번째 만 얻을 수 있다고 생각합니다. 따라서 모든 쌍이 OWL에서 연결됩니다. –

+0

사실, 나는 TBOX만을 고려하고 있습니다. 나는 OWL에 개인이 없습니다. 내가 정확히 원하는 것은 클래스 S를 손에 들고 (상수), 모든 클래스 Class1, Class2, Class3 ...을 찾고 싶습니다. S = 1p : Class1; S ⊑ = 1q : Class2; S ⊑ = 1r : Class3 ... 여기서 S는 p, q, r 각각에 대한 도메인으로 정의되며 Class1, Class2, Class3은 각각 해당 범위입니다. 다시 말하면, 처음에는 단 하나의 클래스 S 만 가지고 있고, 모든 클래스 D는 objectProperty pi에 의해 S와 관련이 있습니다. 여기서 S는 속성 도메인이고, Di는 속성 범위이고 S subClassOf pi는 정확히 1 D입니다. –

+0

(= 1 pD) 및 (= 1 qD)는 정상입니다. –

답변

1

DL 쿼리 구문에서 묻는 쿼리 종류를 작성할 수 없습니다. DL 쿼리 구문에는 변수에 대한 위치가 없습니다. 작성할 수있는 것은 모두 클래스 표현식입니다. 그런 다음 클래스의 개인 또는 클래스의 서브 클래스 또는 수퍼 클래스를 요청할 수 있습니다. 첫 번째 질문에 대한 답은 맨체스터 구문으로 쿼리를 표현할 수 없다는 것입니다.

두 번째 사항은 여기에 결론을 도출하는 데 도움이되는 추론자가있을 수 있습니다. 예를 들어, 은 SPARQL 쿼리를 지원하는 추론자를 사용할 수 있고 클래스 표현식의 템플릿을 변수와 함께 쓸 수 있습니다. 이 같은 끝낼 것 (그러나이 안된) :

prefix xsd: <http://www.w3.org/2001/XMLSchema#> 
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
prefix owl: <http://www.w3.org/2002/07/owl#> 

select ?s ?p ?d where { 
    ?s rdfs:subClassOf [ a owl:Restriction ; 
         owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; 
         owl:onProperty ?p ; 
         owl:onClass ?d ] 
} 

내가 가장 OWL 추론 비록 그것을 처리 할 수 ​​있는지 여부를 알 수 없습니다. 위에서 언급했듯이 OWL 추론 기의 일반적인 작업은 클래스 표현식을보고 하위 클래스와 수퍼 클래스를 결정하는 것입니다. 점점 복잡해지고 있습니다.