본문 바로가기
IT

OWL 2 프로파일 완전 비교 — EL·QL·RL 언제 무엇을 쓰는가 선택 가이드

by 샤나엘 2026. 5. 20.
반응형

OWL 2 프로파일 완전 비교 — EL·QL·RL 언제 무엇을 쓰는가 선택 가이드

W3C OWL 2 표준은 풍부한 표현력을 자랑하지만 그만큼 추론 복잡도도 폭발한다. 모든 기능을 다 쓰는 OWL 2 Full은 결정 불가능(undecidable)이고, OWL 2 DL도 N2EXPTIME-complete라 실무 데이터셋에 그대로 적용하면 추론이 끝나지 않는 경우가 흔하다. 이 문제를 해결하기 위해 W3C가 도입한 것이 EL·QL·RL 세 가지 프로파일이다.

 

각 프로파일은 OWL 2 DL의 구문적 부분집합이지만 도메인별 최적화 방향이 다르다. EL은 대형 분류 체계, QL은 관계형 DB 위 OBDA, RL은 룰 기반 KB에 강하다. 같은 OWL 2라는 이름을 쓰지만 사용처와 추론기, 성능 특성이 명확히 갈린다. 이 글은 세 프로파일의 정의, 표현력 차이, 추론기 매핑, 그리고 실무에서 어떤 기준으로 선택할지 한 번에 정리한다.

 

OWL 2 프로파일 완전 비교

이 글의 구성

 

01OWL 2 개요와 DL/Full 구분
02OWL 2 EL — 대형 분류 체계
03OWL 2 QL — OBDA·관계형 DB 통합
04OWL 2 RL — 룰 기반·웹 스케일 트리플
053종 프로파일 한눈에 비교
06추론기 매핑과 성능 데이터
07실무 선택 매트릭스
Q&A자주 묻는 질문 5가지

01 OWL 2 개요와 DL/Full 구분

OWL 2는 W3C가 2009년 10월 27일 권고한 웹 온톨로지 언어이며 2012년 12월 2판이 나왔다. 설명 논리(Description Logic) 를 기반으로 클래스·속성·공리를 정형적으로 표현하며, RDF 위에 강력한 의미론을 얹는다.

구분 기반 논리 결정 가능성
OWL 2 DL SROIQ(D) 결정 가능 · N2EXPTIME-complete
OWL 2 Full RDF 의미론 완전 호환 결정 불가능 · 일반 추론기 없음

OWL 2 DL은 결정 가능하지만 N2EXPTIME이라는 무서운 복잡도가 발목을 잡는다. 작은 도메인에서는 HermiT·Pellet·Konclude 같은 일반 DL 추론기로 다룰 수 있지만, 수십만 개념 규모의 SNOMED CT나 수십억 트리플의 KG에는 적용이 어렵다. 이를 해결하기 위해 OWL 2는 EL·QL·RL 세 가지 경량 프로파일을 별도로 정의했다.

💡 핵심 — 프로파일은 OWL 2 DL의 구문적 부분집합

EL·QL·RL은 모두 OWL 2 DL의 구문 일부만 허용해 추론 복잡도를 다항식 시간 안에 맞춘 것이다. 표현력을 일부 포기하는 대신 대규모 데이터에서 실용적인 추론 성능을 확보한다. 도메인 요구에 따라 셋 중 하나를 골라 사용한다.


02 OWL 2 EL — 대형 분류 체계

EL(Existential Logic, EL++ 기반) 은 존재 양화(ObjectSomeValuesFrom)에 집중한 프로파일이다. 표준 추론 작업(분류·일관성·포섭·인스턴스 검사)이 모두 다항식 시간(P) 안에 끝난다.

✓ 지원

  • ObjectSomeValuesFrom (존재 제약)
  • ObjectIntersectionOf (교집합)
  • 클래스 계층 · subClassOf
  • 속성 체인 (Property Chain)
  • Self 제약

✗ 제외

  • Universal Restriction (∀)
  • Negation (부정)
  • Disjunction (합집합)
  • Inverse Properties
  • Cardinality 제약

적용 도메인: SNOMED CT(약 35만 개념), NCI Thesaurus, Gene Ontology, GALEN 같은 대형 의료·생명과학 분류 체계가 모두 EL로 표현된다. ELK 추론기는 SNOMED CT 30만 클래스 분류를 모던 노트북에서 약 4초 안에 끝낼 수 있어 의료 표준 분야에서 사실상 독점적 위치를 차지한다.


03 OWL 2 QL — OBDA·관계형 DB 통합

QL(Query Language, DL-Lite 기반) 은 관계형 DB 위에 온톨로지 뷰를 얹는 OBDA(Ontology-Based Data Access) 에 최적화된 프로파일이다. 데이터 복잡도가 AC0로, 회로 깊이 상수에 다항 크기로 제한된다. 무엇보다 SPARQL/CQ 쿼리를 RDBMS의 SQL로 그대로 재작성(query rewriting) 할 수 있다는 점이 결정적이다.

OBDA 동작 흐름

SPARQL 쿼리 → Ontop 재작성 → SQL → 기존 RDBMS → 결과 → 매핑 적용 → SPARQL 응답

기존 RDB를 그대로 두고 의미 계층만 얹는다는 점이 핵심. 데이터 마이그레이션 비용 없음.

지원 기능은 SubClassOf, 서브클래스 위치 외 ObjectSomeValuesFrom, Inverse Properties, 도메인·범위 제약이 핵심이다. 반대로 Universal Restriction, Cardinality 제약, 부정 객체 속성 단언, 등식 공리, 속성 체인은 제외된다. UML/ER 모델 표현에는 충분한 표현력이라 BI 의미 계층·기업 데이터 통합 분야에서 활용된다. 대표 도구는 Ontop(오픈소스)·Mastro·QuOnto다.


04 OWL 2 RL — 룰 기반·웹 스케일 트리플

RL(Rule Language)Datalog 룰(전방향 연쇄, forward chaining) 로 표현 가능한 OWL 2 부분집합이다. PTIME-complete 복잡도이며, 룰 엔진 환경에 자연스럽게 매핑된다. RDF(S) 애플리케이션이 더 강한 표현력을 얻거나, OWL 2 DL 애플리케이션이 효율성을 위해 표현력을 양보할 때 양쪽 모두 RL을 선택한다.

 

지원 기능은 SubClassOf, 제한적 EquivalentClasses, Inverse·Functional·Transitive Properties, 거의 모든 속성 공리다. 룰화 불가능한 구성(좌측 ExistentialQuantification 머리, 무한 모델 강제 표현 등)이 제외된다. 대표 추론기는 RDFox(Oxford·OST, in-memory 병렬, 약 50GB로 1.0~1.5B 트리플 저장), Stardog(2024 KG Summit 벤치마크 기준 100억 트리플 서브초 추론), Jena Rules, GraphDB(구 OWLIM)이다.


05 3종 프로파일 한눈에 비교

항목 EL QL RL DL (참고)
기반 논리 EL++ DL-Lite_R DLP / Datalog SROIQ(D)
TBox 복잡도 PTime PTime PTime N2ExpTime
데이터 복잡도 PTime AC0 PTime-complete 결정 가능
추론 방식 consequence-based query rewriting forward chaining tableau
대상 도메인 대형 분류·의료 OBDA·관계형 통합 룰 KB·웹 스케일 표현력 최대
대표 추론기 ELK · CEL Ontop · Mastro RDFox · Stardog HermiT · Konclude

06 추론기 매핑과 성능 데이터

EL 진영

ELK(Oxford·Ulm) · CEL · JCEL · Snorocket(CSIRO, IHTSDO 채택). ELK는 SNOMED CT 30만 클래스를 모던 노트북에서 약 4초에 분류한다.

QL 진영

Ontop(오픈소스, SPARQL→SQL 재작성) · Mastro(OBDA Systems) · QuOnto. R2RML·OWL 2 QL·RDFS·SPARQL W3C 표준 완전 호환.

RL 진영

RDFox(Oxford·OST, in-memory 병렬) · Stardog · Jena Rules · GraphDB. RDFox 약 50GB로 1.0~1.5B 트리플 저장, Stardog 100억 트리플 서브초 추론.

DL 일반

HermiT(hypertableau, Oxford) · Pellet · FaCT++ · Konclude(SROIQV(D), 병렬·고성능). 데이터셋이 작거나 표현력 최대치가 필요한 경우 선택.


07 실무 선택 매트릭스

상황 권장 프로파일 대표 추론기
대형 분류 체계(의료·생명과학) OWL 2 EL ELK
기존 RDBMS 위에 의미 계층 OWL 2 QL Ontop
룰 기반 KB · 웹 스케일 트리플 OWL 2 RL RDFox · Stardog
표현력 최대 + 작은 데이터셋 OWL 2 DL (Full 회피) HermiT · Konclude

선택의 출발점은 "데이터 크기가 어느 정도인가" 와 "어떤 추론 형태가 필요한가" 두 가지다. 데이터가 작고 표현력이 핵심이면 OWL 2 DL을 그대로 쓰고, 데이터가 거대해질수록 EL·QL·RL 중에서 도메인 패턴에 맞는 것을 고른다.


08 자주 묻는 질문 5가지

Q1. OWL 2 Full을 그냥 쓰면 안 되나?

결정 불가능이라 자동 추론기가 보장되지 않는다. 룰 기반 일부 추론은 가능하지만 일반적인 분류·일관성 검사는 종료를 보장할 수 없다. 표현력이 정말 필요하면 OWL 2 DL을 쓰고, 대규모 데이터라면 프로파일을 선택하는 것이 안전하다.

Q2. EL·QL·RL 셋이 서로 부분집합 관계인가?

아니다. 세 프로파일은 OWL 2 DL의 서로 다른 부분집합이며 교집합 외에는 서로 호환되지 않는다. 같은 온톨로지를 두 프로파일로 동시에 작성하기는 어렵고, 도메인 요구에 따라 하나를 선택해야 한다.

Q3. QL의 AC0 데이터 복잡도가 왜 중요한가?

AC0는 회로 깊이 상수에 다항 크기로 풀린다는 의미이고, 실용적으로는 SPARQL/CQ를 SQL로 재작성한 뒤 RDBMS가 그대로 응답할 수 있다는 뜻이다. 데이터 마이그레이션 없이 기존 RDB 위에 온톨로지 뷰를 얹는 OBDA의 핵심 토대다.

Q4. 모든 프로파일을 지원하는 추론기가 있나?

Stardog가 EL·QL·RL·DL을 모두 동적(backward-chaining) 방식으로 다룬다. 다만 각 프로파일에 특화된 추론기(EL의 ELK, QL의 Ontop, RL의 RDFox)가 해당 영역에서는 더 빠르다. 운영 환경에서는 도메인에 맞는 전용 추론기를 우선 검토한다.

Q5. 프로파일 위반 여부를 자동 검증할 수 있나?

Protégé 같은 편집기에서 프로파일 검증 기능을 제공한다. OWLAPI도 `OWL2ELProfile`, `OWL2QLProfile`, `OWL2RLProfile` 클래스로 검증을 지원한다. 온톨로지 설계 단계에서 프로파일 선택을 미리 정하고 빌드마다 검증을 거는 것이 권장된다.


마무리

OWL 2 프로파일 선택은 단순히 "어느 게 더 좋은가"의 문제가 아니라 "도메인이 어떤 추론을 요구하는가"의 매핑 문제다. 의료 분야의 대형 분류 체계라면 EL이 사실상 정답에 가깝고, 기존 RDB를 그대로 의미화하고 싶다면 QL의 OBDA 패턴이 강력하며, 룰 기반 추론과 웹 스케일 트리플이 필요하다면 RL이 가장 자연스럽다.

 

세 프로파일 모두 OWL 2 DL의 부분집합이라 표현력을 일부 양보하는 대신 다항식 시간 추론을 얻는다는 공통 철학을 공유한다. 표현력이 정말 절실하고 데이터셋이 작다면 OWL 2 DL을 그대로 쓰되 OWL 2 Full로는 가지 않는 것이 안전하다. 프로파일 선택을 미리 정하고 Protégé·OWLAPI의 검증 기능으로 빌드마다 점검하는 습관이 운영 안정성을 결정한다.

OWL 2 프로파일 선택 체크리스트

 

01도메인 데이터 크기·추론 형태부터 정의 — 분류·OBDA·룰 중 하나.
02의료·생명과학 대형 분류 → OWL 2 EL + ELK.
03기존 RDB 의미화 → OWL 2 QL + Ontop, SPARQL→SQL 재작성.
04웹 스케일 트리플·룰 추론 → OWL 2 RL + RDFox/Stardog.
05표현력 최대 + 데이터 작음 → OWL 2 DL + HermiT/Konclude, Full 회피.
06Protégé·OWLAPI 프로파일 검증을 CI 빌드에 통합.
07Stardog는 EL·QL·RL·DL을 모두 다루지만 전용 추론기 성능과 비교 후 선택.

본 글은 OWL 2 프로파일(EL·QL·RL)의 표현력·추론 복잡도·도구 매핑·실무 선택 기준을 정리한 일반 정보다. 표준·도구 버전은 변경될 수 있으므로 W3C OWL 2 권고와 각 추론기 공식 문서의 최신 기준을 직접 확인한다.

 

#OWL2 #OWL2EL #OWL2QL #OWL2RL #OWL2DL #DescriptionLogic #SROIQ #ELK #Ontop #RDFox #Stardog #HermiT #SNOMEDCT #OBDA #SemanticWeb

반응형

댓글