이 글은 표준 개념 글이 아니라 학습 로드맵이다. 표준을 읽을 때 필요한 층위 구분은 국제표준은 시스템 사이의 계약이다에 두었다. 온톨로지라는 말을 형식 온톨로지, 프로퍼티 그래프, 운영 온톨로지로 나누어 직접 만들어 보는 계획을 정리한다.
파운드리 도입을 리서치하다가 알았다. ‘온톨로지’라는 한 단어가 세 가지 다른 물건을 가리킨다. 문서만 읽으면 차이가 흐려지므로, 작은 산출물을 만들어 구분한다.
한 단어, 세 가지 물건
형식 온톨로지: W3C의 OWL과 RDF다. 추론기가 정의로부터 새 사실을 자동으로 도출한다.
프로퍼티 그래프: Neo4j 계열이다. 추론기는 없고, 노드와 엣지로 관계를 빠르게 훑는다.
운영 온톨로지: 팔란티어식이다. Object, Link, Action으로 현재 상태를 들고, 버튼이 데이터로 되돌아 쓴다.
8주, 주 3~4시간. 셋을 각각 손으로 만들고, 마지막에 우리 도메인(OneRoster, xAPI, CASE)의 Learning Ontology v0.1로 수렴시킨다. 명단의 한 줄은 OneRoster는 누가 그 반인지를 넘긴다에서, 학습 기록의 한 줄은 학습 기록은 한 줄이 한 건이다에서 이미 닫아 두었다. 이 로드맵은 그 두 줄 위에 놓인다.
운영 규칙
- 체크는 이 파일을 고치는 커밋으로만 바꾼다. 커밋 히스토리가 타임스탬프다.
- 예제는 항상 우리 데이터로 치환한다. 피자로 배우면 남의 지식으로 끝난다.
- 산출물 없이 다음 Phase로 넘어가지 않는다.
- Phase 2에서 Description Logic 토끼굴에 들어가지 않는다. 1주에서 끊는다.
아래를 스크롤하면 Phase가 하나씩 켜진다. 각 장면의 메모는 지금 안 보이는 것과, 그 Phase를 지나면 보이는 것을 적어 두었다.
Phase 1 1~2주차
개념의 지도
온톨로지지식그래프시맨틱 레이어택소노미네 단어를 남에게 구분해 설명한다. OWA와 CWA가 갈리는 지점을 짚는다.
Phase 2 3주차
형식 온톨로지, Protégé
UserClassEnrollment→ 추론기 →?도출된 사실 1개추론기가 자동으로 만든 사실 한 개를 눈으로 본다. 우리에게 필요한지 판단한다.
Phase 3 4주차
프로퍼티 그래프, Neo4j
민준수강role, status, 기간수학 3반같은 질문을 SQL과 Cypher로 풀고, 속성이 매달린 이 관계를 노드로 둘지 엣지로 둘지 답한다.
Phase 4 5~6주차
운영 온톨로지, 파운드리
Enrollment 객체수강 취소하기Action 하나를 만들어, 버튼이 데이터로 되돌아 쓰는 write-back을 몸으로 안다.
Phase 5 7~8주차
캡스톤, Learning Ontology v0.1
IdentityActivityContentMapAnalytics→ Object, Link, Action다섯 레이어를 한 장의 스키마 문서로 접는다. 첫 소비자 하나를 고른다.
지금은 온톨로지, 지식그래프, 시맨틱 레이어, 택소노미가 한 덩어리로 들린다. kgbook 1~4장과 W3C Primer를 지나면 네 단어가 갈라진다.
네 단어가 아직 한 덩어리다
추론기가 무엇을 자동으로 해주는지 아직 모른다. OneRoster 다섯 엔티티를 OWL로 옮기고 추론기를 돌리면, 물음표 자리에 자동으로 도출된 사실이 온다.
물음표 자리에 사실이 온다
수강이라는 관계에 role, status, 기간이 매달려 있다. 같은 질문을 SQL 3중 JOIN과 Cypher로 풀어 보면, 이 관계를 어디에 둘지 답이 나온다.
관계에 속성이 매달려 있다
지금까지의 온톨로지는 읽기만 했다. 파운드리 무료 티어에서 Action을 하나 만들면 버튼이 눌리기 시작한다. 우리 제품에서 그 실물은 STLink의 rostering write-back이다.
버튼이 눌리기 시작한다
다섯 레이어가 아직 각자 논다. 셋을 다 만들어 본 눈으로 Identity부터 Analytics까지를 Object, Link, Action으로 접으면 v0.1 스키마 문서가 남는다.
다섯 레이어가 한 장으로 접힌다
체크는 아래에서 한다. 스크롤 장면은 지도이고, 체크리스트가 원본이다.
Phase 0 — 상시
- 로드맵 게시 (이 글)
- 참고 사전: 파운드리 공식 문서
Phase 1 (1~2주차) — 개념의 지도
한 문장 목표: 온톨로지, 지식그래프, 시맨틱 레이어, 택소노미를 남에게 구분해서 설명할 수 있다.
- Knowledge Graphs (Hogan 외) 1~4장 — kgbook.org (출판사 공인 무료 HTML, arXiv 축약판)
- W3C RDF 1.1 Primer — 트리플 문법, 1시간
- W3C OWL 2 Primer — 훑기만. 무엇을 표현하는 언어인지까지
- 산출물: 용어 사전 1페이지 (네 용어 구분)
- 산출물: OWA vs CWA — PostgreSQL 사고와 갈라지는 지점 메모
책이 필요하면 Working Ontologist 2판을 Internet Archive 무료 대출로 본다. 3판은 ACM DL에 있고, 실습 데이터는 data.world/swwo에서 무료로 받는다.
완료 기록 — 날짜: / 배운 것 한 줄: / 산출물:
Phase 2 (3주차) — 형식 온톨로지, Protégé
한 문장 목표: 추론기가 무엇을 자동으로 해주는지 눈으로 확인하고, 우리에게 필요한지 판단한다.
- Protégé 설치 (brew cask,
~/Applications) - DeBellis 신판 Pizza Tutorial 완주 (3~4시간)
- OneRoster 5개 엔티티를 OWL로: User, Class, Course, Org, Enrollment (p2-build.py)
- 추론기(HermiT) 실행 → 자동 도출된 사실 4개 확인 (직접 붙이지 않은 Teacher/Student 분류가 정의만으로 생겼다)
- 산출물:
.owl파일 + 추론기가 해준 일과 필요 여부 3줄
완료 기록 — 날짜: / 배운 것 한 줄: / 산출물:
Phase 3 (4주차) — 프로퍼티 그래프, Neo4j
한 문장 목표: 같은 질문을 SQL과 Cypher로 풀어보고, 그래프가 이기는 지점을 찾는다.
- Neo4j Sandbox (설치 없이 브라우저) 또는 Desktop
- Neo4j Fundamentals (무료)
- Graph Data Modeling Fundamentals (무료)
- OneRoster 샘플 CSV 로드 → 민준이 듣는 모든 수업의 담당 교사를 SQL 3중 JOIN vs Cypher로
- 산출물: SQL vs Cypher 비교 메모
- 산출물: Enrollment는 노드인가 엣지인가 — 결론과 근거
완료 기록 — 날짜: / 배운 것 한 줄: / 산출물:
Phase 4 (5~6주차) — 운영 온톨로지, 파운드리
한 문장 목표: Object/Link/Action 패턴을 무료 티어에서 직접 만들어보고, 형식 온톨로지와의 차이를 몸으로 안다.
- build.palantir.com 무료 developer tier 가입
- learn.palantir.com — Foundry Foundations
- 같은 곳에서 Speedrun: Build Your First AIP Workflow 완주 (60~90분)
- Student / Class / Enrollment를 Object Type으로 정의
- Action 1개 (수강 취소) — 규칙 검증 포함
- 산출물: Phase 2와 결정적으로 다른 점 3가지 메모
완료 기록 — 날짜: / 배운 것 한 줄: / 산출물:
Phase 5 (7~8주차) — 캡스톤: Learning Ontology v0.1
한 문장 목표: 지금까지 배운 셋을 우리 5레이어(Identity→Activity→Content→Map→Analytics)에 수렴시킨다.
- Martin Fowler, Event Sourcing — xAPI는 이벤트 로그, 온톨로지는 현재 상태 프로젝션이라는 구도의 정식 이름
- CASE를 온톨로지로 다시 읽기 — CFItem을 Object로, CFAssociation을 Link로
- 산출물: Learning Ontology v0.1 스키마 문서
- 5레이어 ↔ Object/Link/Action 매핑 표
- 첫 소비자 가정 1개 (운영 콘솔 / AIEP 분석 / 일본 POC 중 택1)
- 구현 후보 비교 1페이지: PostgreSQL 뷰 vs Neo4j vs RDF
완료 기록 — 날짜: / 배운 것 한 줄: / 산출물:
선택 트랙 (9주차) — LLM × 지식그래프
- Microsoft GraphRAG 훑기 — AIP가 하는 일의 오픈소스 감각
학습 로그
| 날짜 | 한 일 | 메모 / 링크 |
|---|---|---|
| 2026-08-24 | 로드맵 게시 | 이 글 |
| 2026-08-24 | Phase 1 자료 수집과 산출물 초안 2건 | kgbook과 두 Primer를 로컬에 저장. 용어 사전과 OWA/CWA 메모는 초안이고, 읽기 항목 3개는 아직 남아 있다 |
| 2026-08-24 | Phase 2 선행: OWL 작성과 추론기 실행 | OneRoster 다섯 엔티티를 owlready2로 만들고 HermiT로 분류 4건 도출. Pizza Tutorial은 남아 있다 |