30

RDFS: 스키마와 계층 구조

RDF & 트리플의 세계

학습 목표

rdfs:Class와 rdfs:subClassOf로 클래스 계층을 정의할 수 있다 rdfs:domain/range의 추론 효과를 설명할 수 있다 Open World vs Closed World Assumption의 차이를 이해한다

RDFS — RDF에 "구조"를 부여하는 스키마 언어

학습 목표

  • RDFS의 역할과 RDF 대비 추가 기능을 이해한다
  • rdfs:Class, rdfs:subClassOf로 클래스 계층 구조를 만들 수 있다
  • rdfs:domain, rdfs:range로 속성의 의미를 제한할 수 있다
  • RDFS 추론(Entailment)의 기본 원리를 이해한다

RDF만으로는 부족한 이유

RDF는 트리플을 저장할 수 있지만, 다음을 표현할 수 없습니다:

에디터 로딩 중...

이것을 해결하는 것이 **RDFS (RDF Schema)**입니다.


1. rdfs:Class — 클래스 정의

에디터 로딩 중...

비유: 클래스 = Neo4j의 Label, RDBMS의 테이블


2. rdfs:subClassOf — 계층 구조 (Taxonomy)

에디터 로딩 중...
에디터 로딩 중...

추론 발생! KAIST가 University이면, 자동으로 Organization이기도 합니다:

에디터 로딩 중...

3. rdfs:subPropertyOf — 속성 계층

에디터 로딩 중...

4. rdfs:domain & rdfs:range — 속성 의미 제한

에디터 로딩 중...

추론 효과:

에디터 로딩 중...

주의! Open World Assumption:

RDFS는 "제약"이 아니라 "추론"입니다!

에디터 로딩 중...

Open World Assumption은 RDF의 핵심 철학입니다:

  • "알려지지 않은 것은 거짓이 아니라 미지"
  • SQL과 정반대 (SQL은 Closed World)
  • OWL에서 더 강한 제약을 걸 수 있음 (Day 2에서 배움)

5. rdfs:label & rdfs:comment — 문서화

에디터 로딩 중...

RDFS 핵심 어휘 총정리

어휘용도예시
rdfs:Class클래스 정의ex:Person a rdfs:Class
rdfs:subClassOf클래스 계층ex:Student rdfs:subClassOf ex:Person
rdf:Property속성 정의ex:name a rdf:Property
rdfs:subPropertyOf속성 계층ex:hasFriend rdfs:subPropertyOf ex:knows
rdfs:domain속성의 주어 클래스ex:name rdfs:domain ex:Person
rdfs:range속성의 목적어 타입ex:name rdfs:range xsd:string
rdfs:label인간 읽기용 이름ex:Person rdfs:label "사람"@ko
rdfs:comment설명ex:Person rdfs:comment "..."@ko
rdfs:seeAlso관련 리소스ex:Person rdfs:seeAlso http://...
rdfs:isDefinedBy정의 출처ex:Person rdfs:isDefinedBy http://...

RDFS vs OWL 비교 (Day 2 예고)

기능RDFSOWL
클래스 계층
속성 domain/range
동치 클래스✅ equivalentClass
상호 배타✅ disjointWith
카디널리티✅ cardinality
역관계✅ inverseOf
복합 조건✅ unionOf, intersectionOf

→ RDFS는 "가벼운 스키마", OWL은 "강력한 온톨로지 언어"


핵심 정리

RDFS는 RDF에 클래스 계층(subClassOf)과 속성 제약(domain/range)을 추가하여 기계가 데이터의 구조를 이해하고 자동 추론할 수 있게 합니다.

📖 심화 읽기: 이강배 외, "지식그래프", 유원북스, 2025 — 3장 RDFS

핵심 포인트
  • RDFS = RDF에 스키마(구조) 부여: 클래스 정의, 계층 구조, 속성 제약
  • rdfs:subClassOf: 계층 구조 정의 → 하위 클래스 인스턴스는 상위도 자동 추론
  • rdfs:domain/range: 속성의 주어/목적어 타입 추론 (제약이 아닌 추론!)
  • Open World Assumption: 알려지지 않은 것은 거짓이 아니라 미지
  • RDFS는 가벼운 스키마, 더 강한 표현은 OWL (Day 2)