2026. 4. 22. 14:30ㆍ정리/책 정리
14장 주요 온톨로지 정리
도입: 온톨로지 아키텍처
OWL은 온톨로지의 모듈성을 관리하기 위해 두 가지 핵심 기능을 제공한다.
owl:Ontology — 의미 모델의 모듈식 단위를 나타내는 클래스. 추론에는 관여하지 않지만 모델 구성에 유용하다.
owl:imports — 한 온톨로지가 다른 온톨로지를 불러오는 속성. 순환 참조가 발생해도 동일 파일을 두 번 가져오지 않는 정책으로 안전하게 처리되며, 결과 트리플은 모든 파일의 합집합이 된다.
1. QUDT (수량·단위·차원·유형)
NASA의 컨스텔레이션 계획에서 출발한 온톨로지로, 과학·공학 분야의 측정 단위 문제를 해결한다.
세 가지 핵심 목적
목적 설명
| 전역 참조 | 모든 단위에 명확한 URI를 부여해 모호함 제거 (UN/CEFACT 코드와도 연동) |
| 단위 변환 | conversionMultiplier, conversionOffset 속성으로 단위 간 변환 지원 |
| 차원 분석 | 수식의 차원 유효성 검사 (예: F=ma 검증) |
핵심 개념 구조
- 수량 종류(QuantityKind) — 길이, 질량, 시간 등 측정 가능한 속성의 유형
- 단위(Unit) — 특정 수량 종류의 측정 기준 (예: 피트 → 길이)
- 차원 벡터 — [길이, 질량, 시간] 형태로 복합 단위의 차원을 표현 (예: 속도 = [1,0,-1])
활용 예시
-- 10km를 마일로 변환
SELECT ((((?val * ?M1) + ?O1) - ?O2) / ?M2) AS ?converted)
WHERE {
BIND (10.0 AS ?val)
unit:KM qudt:conversionMultiplier ?M1 ; qudt:conversionOffset ?O1 .
unit:MI qudt:conversionMultiplier ?M2 ; qudt:conversionOffset ?O2 .
}
-- 결과: 6.21
SHACL Rules를 활용하면 qudtsh:convert(10.0, unit:KM, unit:MI) 형태의 함수 호출로 단순화할 수 있다.
2. OBO (생물학·생의학 온톨로지)
생명과학 분야 온톨로지의 집합으로, 유전체·암 유전자·생화학 데이터 등 방대한 정보를 담고 있다.
대표 사례: CHEBI (생물학적 관심 화학물질)
EBI에서 관리하며 20,000개 이상의 화합물 정보를 포함한다.
두 가지 주요 역할:
① 명확한 참조 제공 — 각 화학물질에 URI를 부여하고 CAS, DrugBank, KEGG 등 다른 식별 체계와 상호 참조한다.
② 복잡한 검색 지원 — owl:someValuesFrom 패턴으로 화학물질 간 관계를 클래스로 모델링한다.
# 글리포세이트가 제초제 역할을 한다는 표현
obo:CHEBI_27744 rdfs:subClassOf [
owl:onProperty obo:has_role ;
owl:someValuesFrom chebi:CHEBI_24527 # herbicide
] .
단순 트리플 대신 이 패턴을 쓰는 이유는 OWL 추론을 통해 "살충제 역할을 하며 인을 포함하고 모체 수소화물이 암모니아인 화학물질"과 같은 복합 질의에 자동으로 응답할 수 있기 때문이다.
OWL vs SKOS 표현의 트레이드오프
구분 OWL SKOS
| 모델 복잡도 | 높음 | 낮음 |
| 질의 복잡도 | 낮음 (추론이 대신 처리) | 높음 (전이적 관계를 직접 명시) |
| 적합 용도 | 설계된 질의에 최적화 | 범용 탐색 |
BridgeDb
서로 다른 생물학 데이터베이스(유전자, 화합물, 단백질 등) 사이의 대응 관계를 링크 세트로 제공하는 자원. 데이터 세트 간 매핑 연구 결과를 표준화된 방식으로 공유하게 해준다.
3. FIBO (금융 산업 비즈니스 온톨로지)
2008년 금융위기에서 영감을 받아 EDMC가 구축한 금융 상품 온톨로지로, MIT 오픈소스 라이선스로 제공된다.
목적
- 금융 기관 간 상호 운용 가능한 데이터 보고 지원
- 기관 내·외부의 의사소통 일관성 향상
- 전사적 지식 그래프 구축의 출발점 제공
구조
4,000개 이상의 클래스와 2,500개 속성이 11개 도메인 (FND, BE, FBC, LOAN, SEC, IND, DER 등)으로 구성되며, HTTP URI 자체에 도메인 구조가 반영된다.
https://spec.edmcouncil.org/fibo/ontology/BE/LegalEntities/LegalPersons/
핵심 설계 철학: 데이터 매핑
다양한 조직의 데이터가 이름 변경(Analyst ↔ Researcher)이나 팩토링(구조 재편) 방식으로 서로 다르게 구성되어 있어도, FIBO는 모든 데이터 세트에 매핑 가능한 추상 모델을 제공한다.
예를 들어 법인 식별자(LEI) 모델의 경우, 단순 데이터는 hasLEI 하나의 속성으로 표현하지만 FIBO는 LEI 자체를 독립 클래스로 모델링해 GLEIF 같은 복잡한 외부 모델과도 연동할 수 있다.
세 온톨로지 비교 요약
구분 QUDT OBO/CHEBI FIBO
| 데이터 양 | 중간 | 많음 | 적음 |
| 구조 복잡도 | 중간 | 낮음 | 높음 |
| 주요 역할 | 단위 변환·차원 분석 | 생물학 개체 분류·검색 | 금융 데이터 상호운용 |
| 핵심 기능 | 전역 참조 + 변환 + 차원 | 명확한 참조 + 복잡 추론 | 데이터 세트 간 매핑 |
세 온톨로지 모두 표준 개체에 대해 전역적으로 명확한 이름을 제공하는 시맨틱 웹의 기본 역할을 수행하며, 그 방식과 활용 맥락에서 차이를 보인다.
“온톨로지 선택 기준 + 대표 사례(QUDT / OBO / FIBO) + 구조(OWL 모듈성)”로 나눠서 보는 게 가장 명확하다.
📌 1. 왜 “온톨로지 전체 목록”은 불가능한가
핵심 메시지부터 정리하면:
👉 웹처럼 온톨로지도 끊임없이 생성되는 생태계다
이미 존재하는 대표적인 것만 봐도:
- data.gov → 정부 데이터
- FOAF → 사람/관계
- Schema.org → 웹 구조화 데이터
- Open Graph Protocol → SNS 공유 데이터
👉 즉, “표준 하나”가 아니라
👉 “목적별로 분산된 온톨로지 네트워크”가 현재 구조
📌 2. 온톨로지 선택 기준 (핵심 포인트)
책에서 제시한 기준은 매우 중요함:
✔ 선택 기준 2가지
- 표현력 (RDFS 이상인가?)
- 단순 taxonomy인지
- 논리 추론 가능한지 (OWL)
- 영향력 (실제 산업/연구에서 쓰이는가)
📌 3. 대표 온톨로지 3개 (핵심 비교)
① QUDT
👉 “단위 / 수량 / 변환” 문제 해결
핵심 역할
- 전역 단위 식별 (URI 기반)
- 단위 변환 (km ↔ mile)
- 차원 검증 (물리 공식 검증)
🔥 핵심 개념 구조
- Quantity (수량)
- Unit (단위)
- Dimension (차원)
👉 예:
- 길이 vs 시간 vs 질량 구분
📊 변환 공식 핵심
value_{target} = \frac{(value \cdot M_1 + O_1) - O_2}{M_2}
👉 이 구조 덕분에:
- km → mile
- °F → °C
같은 변환 가능
💡 핵심 가치
👉 데이터 통합의 필수 도구
예:
- 쇼핑 비교 (시간 vs 분)
- IoT 센서 데이터 통합
② OBO Foundry
👉 생물학/의학 온톨로지 집합
대표 예:
- CHEBI
핵심 역할
- 개념 표준화 (유전자, 화학물질 등)
- 서로 다른 DB 연결 (Rosetta Stone 역할)
- 복잡한 질의 가능
🔥 중요한 특징
👉 모든 것을 Class 기반으로 모델링
glyphosate ⊆ (has_role some herbicide)
👉 단순 트리플이 아님
💡 왜 복잡하게 만드나?
👉 이유 = 추론 때문
단순하게 쓰면:
A has_role B
하지만 이렇게 하면:
❌ 계층 추론 불가능
❌ 간접 관계 탐색 불가능
👉 OWL 방식이면:
- herbicide ⊆ pesticide
- glyphosate → herbicide
➡ 자동으로
👉 glyphosate → pesticide 추론됨
💡 핵심 가치
👉 “지식 검색 엔진” 역할
③ FIBO
👉 금융 산업 온톨로지
특징
- 금융 상품 정의 (채권, 파생상품 등)
- 규제 대응
- 데이터 표준화
배경
- Basel Committee on Banking Supervision
- 2008 금융위기 이후 등장
💡 핵심 가치
👉 금융 데이터 통합 + 규제 대응
📌 4. OWL 온톨로지 아키텍처 핵심
① owl:Ontology
👉 온톨로지 = 하나의 모듈
<...shakespeare.owl> a owl:Ontology
② owl:imports
👉 온톨로지 연결 방식
A imports B
B imports C
➡ 결과:
👉 전체 = A + B + C (합집합)
💡 중요한 특징
- 추론 기능 없음
- 하지만 “구조 관리” 핵심
🔥 핵심 개념
👉 온톨로지는 “코드처럼 모듈화됨”
이유:
- 팀 분리 개발
- 변경 속도 차이
- 재사용
📌 5. 가장 중요한 통찰 (핵심 요약)
🔥 1. 온톨로지는 하나가 아니다
👉 “분산된 생태계”
🔥 2. 좋은 온톨로지는 3가지 역할 수행
역할설명
| 식별 | URI로 개념 통일 |
| 연결 | 서로 다른 데이터 연결 |
| 추론 | 숨겨진 관계 발견 |
🔥 3. QUDT vs OBO vs FIBO 본질 차이
온톨로지역할
| QUDT | 계산 (단위/수량) |
| OBO | 지식 (생명과학) |
| FIBO | 비즈니스 (금융) |
🔥 4. OWL의 진짜 목적
👉 “데이터 저장”이 아니라
👉 추론 가능한 지식 구조
🚀 한 줄 핵심 정리
👉 온톨로지는
“데이터를 연결하고, 의미를 부여하고, 추론까지 가능하게 만드는 지식 인프라”
원하면 다음 단계로:
👉 GraphRAG에서 QUDT/OBO 어떻게 쓰는지
👉 Neo4j + Ontology 설계 패턴
👉 SKOS vs OWL 선택 기준
까지 이어서 설명해줄게.
'정리 > 책 정리' 카테고리의 다른 글
| Ch6 시맨틕 웹 질의하기 : SPARQL 요약 정리 (1) | 2026.04.26 |
|---|---|
| Ch15 좋은 모델링과 나쁜 모델링 사례 요약 정리 (1) | 2026.04.25 |
| Ch13 OWL에서의 계산과 집합 정리 (0) | 2026.04.19 |
| 12장 OWL 기초 요약 정리 (1) | 2026.04.18 |
| 《당신이 옳다》 핵심 정리 (2) | 2026.04.17 |