세 단어 문장, 트리플
속성 그래프와 다른 길에서 출발한 그래프 모델 RDF를 봅니다. RDF는 모든 사실을 세 단어로 된 문장으로 적습니다.
이번 회차, 내 속도로.
기초를 더 짚거나 궁금한 주제로 잠깐 넓혀 보세요. 최대 3단계를 거쳐 DAY 36로 돌아옵니다.
난이도·관심 주제 고르기
1/2개 선택 · 새 보충·심화 수업과 본과정 다시 읽기를 선택할 수 있어요.
이렇게 다녀와요 1단계 · 약 12분
- 출발 · DAY 36주어·술어·목적어
- 1. 관심 주제빈 노드·데이터타입·언어 태그추가 15 · 새 추가 수업
- 복귀 · DAY 36원래 회차 이어가기
- 빈 노드·데이터타입·언어 태그 · DAY 36·37에서 트리플과 IRI를 배운 뒤, 이름 없는 대상과 값의 타입 때문에 생기는 실수를 다루러 옵니다.
선택과 경로 기록은 이 브라우저에 저장됩니다. 본과정의 회차 완료와는 별도입니다.
핵심 개념
RDF(Resource Description Framework)는 W3C가 정한 데이터 모델입니다. 모든 사실을 주어(subject)–술어(predicate)–목적어(object)의 세 요소, 곧 트리플(triple)로 적습니다. ‘민수는 그래프연구실에서 일한다’는 (민수, worksAt, 그래프연구실)이라는 트리플 하나입니다. 트리플의 집합은 주어와 목적어를 노드로, 술어를 레이블 붙은 화살표로 하는 방향 그래프가 됩니다.
자리마다 올 수 있는 것이 정해져 있습니다. 주어는 IRI나 빈 노드, 술어는 IRI, 목적어는 IRI·빈 노드·리터럴입니다. 리터럴은 "민수"나 2021 같은 값이며 목적어 자리에만 옵니다. 그래서 그래프로 그리면 리터럴 노드에서 나가는 화살표는 없습니다. RDF 1.2는 목적어 자리에 올 수 있는 것으로 트리플 텀을 더합니다(DAY 39).
속성 그래프와 달리 RDF에는 ‘노드 속성’이라는 별도 개념이 없습니다. 민수의 이름도 (민수, name, "민수")라는 트리플이고, 연구실과의 관계도 트리플입니다. 속성 그래프에서 민수 노드의 속성 2개(name, role)와 WORKS_AT 관계 1개는 RDF에서 트리플 3개가 되고, 레이블 :Person까지 옮기려면 rdf:type 트리플이 하나 더 필요합니다. 또 RDF 그래프는 트리플의 집합이므로 같은 트리플을 두 번 넣어도 하나로 셉니다.
트리플은 늘 두 대상 사이의 이항 관계입니다. 그래서 ‘2021년부터 근무’처럼 관계에 붙는 정보나 세 명 이상이 참여한 사건은 그대로 담기지 않고 따로 모델링해야 합니다(DAY 39, 42). 또 RDF 자체는 데이터가 형식에 맞는지 검증하지 않으므로, 검증은 SHACL 같은 별도 도구가 맡습니다(DAY 63).
작은 예제로 따라가기
(민수, worksAt, 그래프연구실), (민수, name, "민수"), (그래프연구실, city, "대전")은 트리플 3개입니다.
이를 그리면 노드는 민수·그래프연구실·"민수"·"대전" 4개(자원 2, 리터럴 2)이고 화살표는 3개입니다.
(민수, worksAt, 그래프연구실)을 한 번 더 넣어도 집합이라 트리플은 여전히 3개입니다.
직접 실험해 보기
트리플 표의 행을 하나씩 눌러 그래프에서 강조되는 엣지를 확인하고, 사각형으로 그려진 리터럴 노드에서 나가는 엣지가 있는지 살핀 뒤 ‘트리플 추가’ 선택지를 하나 실행해 노드·엣지 수의 변화를 적으세요.
트리플 한 줄이 엣지 하나가 된다
| # | 주어 | 술어 | 목적어 |
|---|---|---|---|
| ex:minsu | rdf:type | foaf:Person | |
| ex:minsu | foaf:name | "민수" | |
| ex:minsu | ex:worksAt | ex:lab1 | |
| ex:minsu | foaf:knows | ex:jia | |
| ex:jia | foaf:name | "지아" | |
| ex:jia | ex:worksAt | ex:lab1 | |
| ex:lab1 | ex:city | "대전" |
원은 IRI(전역 이름), 사각형은 리터럴(값). ex:lab1은 그래프연구실, ex:lab2는 언어연구실을 가리키는 IRI다. 트리플 하나 = 주어 → 술어 → 목적어 엣지 하나. 같은 IRI는 몇 번 나와도 노드 하나다.
이번에는 직접 풀어 보세요
정답을 보기 전에 계산과 이유를 적어 보세요. 해설과 비교하고 확인 표시를 남기면 완료할 수 있습니다.
힌트 보기
논문을 하나의 대상(P3)으로 두고 제목과 연도를 따로 적습니다.
풀이와 비교하기
(서준, worksAt, 그래프연구실), (서준, authored, P3), (P3, title, "그래프 검색 증강"), (P3, year, 2023)으로 트리플 4개, 리터럴 2개입니다.
풀이와 확인 표시는 이 브라우저에 저장됩니다.
오늘 이해한 것과 다시 볼 것
계산이 달라진 이유, 헷갈린 개념, 다음에 확인할 질문을 남겨 보세요.
메모는 이 브라우저에 저장됩니다. 홈에서 전체 기록을 내려받을 수 있습니다.오늘의 이해 확인
RDF 트리플에서 리터럴(예: "대전")이 올 수 있는 자리는?
완료 조건: 확인 퀴즈 정답 · / 직접 풀기 0/1
더 깊이 읽기
예제와 실험 데이터는 이 과정을 위해 만든 것입니다. 원문은 선택 자료이며, 강의와 직접 풀기만으로도 다음 회차를 이어갈 수 있습니다.
RDF 1.1 PrimerW3CRDF 1.2 Concepts and Abstract Data ModelW3C이 자료는 개념 학습용입니다. 실제 데이터베이스·라이브러리·플랫폼의 동작과 설정은 제품과 버전마다 다를 수 있습니다.