30분
Protege 설치 & 인터페이스 투어
OWL 온톨로지 언어
Protege 설치 & 인터페이스 투어
온톨로지 & 시맨틱웹 > OWL 온톨로지 언어
학습 목표
Protege를 설치하고 기본 온톨로지를 만들 수 있다 추론기를 실행하고 결과를 해석할 수 있다
Protege 5.6 — OWL 온톨로지 편집의 표준 도구
학습 목표
- Protege를 설치하고 실행할 수 있다
- 주요 탭(Classes, Object Properties, Individuals, Reasoner)의 역할을 안다
- 간단한 클래스 계층을 Protege에서 생성할 수 있다
Step 1: 설치
에디터 로딩 중...
추천: Desktop 버전 설치. Web 버전은 기능이 제한적.
Step 2: 첫 실행 & 인터페이스 이해
에디터 로딩 중...
주요 탭 설명:
| 탭 | 역할 | 핵심 기능 |
|---|---|---|
| Classes | 클래스 계층 관리 | 생성, 계층 정의, 제약 추가 |
| Object Properties | 개체-개체 속성 | 관계 정의, inverse, 특성 |
| Data Properties | 개체-값 속성 | 데이터타입 속성 정의 |
| Individuals | 개체(인스턴스) | 클래스 멤버 생성, 속성 값 할당 |
| Reasoner | 추론기 실행 | HermiT/Pellet 선택 및 실행 |
Step 3: 간단한 온톨로지 만들기
-
새 온톨로지 생성: File → New → Ontology IRI 입력
에디터 로딩 중... -
클래스 생성: Classes 탭 → owl:Thing 하위에 추가
- Person (owl:Thing 아래)
- Student (Person 아래)
- Professor (Person 아래)
- Organization (owl:Thing 아래)
- University (Organization 아래)
- Course (owl:Thing 아래)
-
Object Property 생성: Object Properties 탭
- teaches (domain: Professor, range: Course)
- studiesAt (domain: Student, range: University)
- enrolledIn (domain: Student, range: Course)
-
Data Property 생성: Data Properties 탭
- name (domain: Person, range: xsd:string)
- age (domain: Person, range: xsd:integer)
-
Disjoint 설정: Classes 탭에서
- Person 선택 → Disjoint With → Organization 추가
-
Individual 생성: Individuals 탭
- Alice (type: Student, name: "Alice", age: 27)
- Prof_Kim (type: Professor)
- KAIST (type: University)
-
추론기 실행: Reasoner → HermiT → Start Reasoner
- 노란색 → 추론된 결과
- 빨간색 → 모순(inconsistency)
Step 4: OWL 파일 저장 및 확인
에디터 로딩 중...
Protege 핵심 단축키
| 단축키 | 기능 |
|---|---|
| Ctrl+N | 새 온톨로지 |
| Ctrl+S | 저장 |
| Ctrl+Shift+R | 추론기 실행 |
| Ctrl+E | 클래스 추가 |
| Tab | 탭 전환 |
실습 과제
- Protege를 설치하고 실행하세요
- 위 Step 3의 온톨로지를 직접 만드세요
- HermiT 추론기를 실행하고 추론 결과를 확인하세요
- Person을 Organization으로도 설정한 개체를 만들어 모순을 확인하세요
- Turtle 형식으로 저장하고 내용을 확인하세요
에디터 로딩 중...
힌트 보기
- • Protege 실행 시 Java 17+ 필요 (설치 확인)
- • 클래스 추가: owl:Thing 우클릭 → Add subclass
- • Disjoint 설정: 클래스 선택 → 오른쪽 'Disjoint With' 섹션
- • 추론기 안 뜨면: Reasoner 메뉴에서 HermiT 선택 후 Start
- • Turtle로 저장하면 rdflib에서 바로 parse 가능