35

RDF 기초: 트리플, URI, 리터럴

RDF & 트리플의 세계

학습 목표

RDF 트리플의 세 요소를 정확히 구분할 수 있다 URI/IRI 체계와 네임스페이스 활용법을 이해한다 리터럴의 데이터타입과 언어태그를 사용할 수 있다 Blank Node의 용도와 한계를 설명할 수 있다

RDF의 세 가지 구성 요소 완벽 이해

학습 목표

  • RDF 트리플의 세 요소(Subject, Predicate, Object)를 정확히 구분할 수 있다
  • URI/IRI 체계를 이해하고 네임스페이스 활용법을 안다
  • 리터럴(Literal)의 종류와 데이터타입을 알고 사용할 수 있다
  • Blank Node의 개념과 사용 시점을 이해한다

1. RDF 트리플 (Triple)

RDF의 기본 단위는 **트리플(Triple)**입니다. 하나의 사실(fact)을 3개의 요소로 표현합니다.

에디터 로딩 중...

주의: 트리플은 반드시 마침표(.)로 끝납니다 (Turtle 구문).

Subject가 될 수 있는 것: URI 또는 Blank Node Predicate가 될 수 있는 것: URI만 가능 (항상 URI!) Object가 될 수 있는 것: URI, Blank Node, 또는 리터럴

에디터 로딩 중...

2. URI/IRI — 전 세계 고유 식별자

RDF에서 모든 리소스는 **URI(Uniform Resource Identifier)**로 식별합니다.

에디터 로딩 중...

네임스페이스(Namespace)와 접두어(Prefix):

URI가 길어서 매번 쓰기 불편하므로, 접두어를 사용합니다:

에디터 로딩 중...

자주 쓰는 표준 네임스페이스:

접두어URI용도
rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#RDF 기본 어휘
rdfs:http://www.w3.org/2000/01/rdf-schema#RDF 스키마
xsd:http://www.w3.org/2001/XMLSchema#데이터타입
owl:http://www.w3.org/2002/07/owl#OWL 온톨로지
foaf:http://xmlns.com/foaf/0.1/사람/조직
dc:http://purl.org/dc/elements/1.1/더블린 코어 (메타데이터)
schema:http://schema.org/Schema.org (검색엔진)
skos:http://www.w3.org/2004/02/skos/core#분류/시소러스
wdt:http://www.wikidata.org/prop/direct/Wikidata 속성
wd:http://www.wikidata.org/entity/Wikidata 엔티티

3. 리터럴 (Literal) — 데이터 값

Object 자리에 URI 대신 **값(Value)**이 올 수 있습니다:

에디터 로딩 중...

주요 XSD 데이터타입:

타입예시설명
xsd:string"hello"문자열 (기본값)
xsd:integer"42"^^xsd:integer정수
xsd:float"3.14"^^xsd:float부동소수점
xsd:double"3.14159265"^^xsd:double배정밀도
xsd:boolean"true"^^xsd:boolean참/거짓
xsd:date"2024-01-15"^^xsd:date날짜
xsd:dateTime"2024-01-15T10:30:00"^^xsd:dateTime날짜+시간
xsd:anyURIURI 값URI 타입
xsd:decimal"99.99"^^xsd:decimal고정 소수점

4. Blank Node (빈 노드)

URI 없이 "이름 없는 리소스"를 표현할 때 사용합니다:

에디터 로딩 중...

Blank Node 주의사항:

  • 그래프 밖에서 참조 불가 (로컬 식별자)
  • 가능하면 URI를 부여하는 것이 좋음 (Linked Data 원칙)
  • 복잡한 구조를 표현할 때만 제한적으로 사용

5. Property Graph와 RDF 비교 (심화)

에디터 로딩 중...
관점Property Graph 유리RDF 유리
관계 속성직접 저장 가능Reification 필요 (복잡)
표준화GQL 진행 중W3C 확정 표준
추론제한적OWL 기반 자동 추론
상호운용성벤더 종속적표준 기반 데이터 교환
학습 곡선낮음 (직관적)높음 (URI, 네임스페이스)
성능트래버설 빠름트리플 스토어 최적화
생태계Neo4j 중심Wikidata, SPARQL endpoints 풍부

핵심 정리

에디터 로딩 중...

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

핵심 포인트
  • RDF 트리플 = Subject(URI/Blank) + Predicate(URI) + Object(URI/Blank/Literal)
  • URI/IRI: 전 세계 고유 식별자, 네임스페이스로 축약 사용
  • 리터럴: 값 + 데이터타입(xsd:integer, xsd:date 등) 또는 언어태그(@ko, @en)
  • Blank Node: URI 없는 익명 리소스, 가능하면 URI 부여 권장
  • Property Graph vs RDF: 관계 속성은 PG가 편하고, 표준/추론은 RDF가 강함