11분
온톨로지 스펙 v1 문서화
관계·속성·제약 설계
온톨로지 스펙 v1 문서화
관계·속성·제약 설계 > 관계·속성·제약 설계
학습 목표
- 스펙 문서 8절 템플릿으로 설계를 문서화한다
- 문서가 왜 코드보다 오래 사는지 이해한다
스펙 문서화 — 코드가 아니라 문서가 온톨로지다
온톨로지는 Cypher 스크립트가 아니라 합의 문서입니다. 스펙 v1의 목차 템플릿을 확정합니다.
- 개요·범위 (CQ 50선 요약 포함)
- 식별자 정책 (코스 1의 4줄 + 발급 규칙)
- 클래스 사전 — 클래스별 [정의 / 한·영 명칭 / 근거 CQ / 상위클래스 / 대응 표준 / 핵심 속성]
- 관계 사전 — 관계별 [정의역→치역 / 의미 / 근거 CQ / 유효기간 여부]
- 시공간 모델링 규약 (패턴 A·B, E/R/P/A 세트, timeBasis 코드표)
- 제약 3층 목록 (L1/L2/L3 + 강제 주체)
- 명명 규약 (앞 모듈에서 확정)
- 개정 이력 — 버전 관리 필수. 스키마 변경은 CQ 변경에서만 출발(추적성 원칙)
이 문서가 있으면 팀이 바뀌어도, LLM에게 Text2Cypher를 시켜도 온톨로지는 살아남습니다. 코스 4에서 이 스펙이 그대로 프롬프트 재료가 됩니다 — 문서를 잘 써 두면 그때 일이 줄어듭니다.
실습
- 8절 템플릿으로 자기 프로젝트의 스펙 v1 뼈대를 만듭니다. 지금 채울 수 있는 절만 채우고, 나머지는 제목만 두세요.
- 클래스 사전과 관계 사전을 각각 5개씩 실제로 채웁니다. 근거 CQ 열을 비워 두지 마세요 — 비면 그 클래스는 존재 근거가 없다는 뜻입니다.
- 개정 이력에 첫 줄을 씁니다: "v1.0 최초 작성, 근거: CQ 50선 v0.1".
- ⚠️ 스펙과 실제 그래프가 어긋나기 시작하면 스펙은 죽습니다. 어느 쪽이 정본인지를 문서 첫머리에 명시하세요.
이 모듈의 신규 용어
| 용어 | 뜻 |
|---|---|
| 오브젝트/데이터 프로퍼티 | 개체↔개체 관계 / 개체의 값 속성 (OWL 용어) |
| 정의역/치역 (domain/range) | 관계의 출발 클래스 / 도착 클래스 |
| 카디널리티 | 관계의 개수 제약. "기항은 정확히 1척의 선박에 속한다" |
| 단축 관계 (shortcut relation) | 이벤트 이력을 요약한 현재 상태 관계. 성능용 이중화 |
| timeBasis | 타임스탬프가 어느 지점 기준인지(선석/도선점 등)의 표시. DCSA JIT의 핵심 구분 |
| SHACL | RDF 그래프의 제약 검증 표준. LPG(Neo4j)에서는 ETL 검증으로 대체 |
| 개정 이력 (changelog) | 스펙 버전 관리 기록. "온톨로지는 진화한다"의 제도화 |
에디터 로딩 중...