40

SHACL 실습: pySHACL로 데이터 검증

SHACL 데이터 검증 & 오픈 온톨로지

학습 목표

pySHACL로 RDF 데이터를 검증할 수 있다 Validation Report에서 위반 사항을 파싱할 수 있다 데이터 파이프라인에 SHACL 검증을 통합하는 패턴을 적용할 수 있다

SHACL 실습: pySHACL로 데이터 검증

실습 목표

pySHACL 라이브러리를 사용하여 RDF 데이터를 SHACL Shape으로 검증하는 실습입니다.

이 실습을 끝내면:

  • Python에서 SHACL 검증을 자동화할 수 있습니다
  • Validation Report를 파싱하여 위반 사항을 추출할 수 있습니다
  • 데이터 파이프라인에 SHACL 검증을 통합하는 패턴을 익힙니다

환경 설정

에디터 로딩 중...

Part 1: 기본 검증 — 대학교 데이터

이 코드를 단계별로 실행하며 SHACL 검증 흐름을 이해하세요.

에디터 로딩 중...

Part 2: 위반 데이터 검증 — 에러 잡아보기

의도적으로 잘못된 데이터를 넣어 검증 결과를 확인합니다:

에디터 로딩 중...

Part 3: Validation Report 파싱

프로그래밍으로 위반 사항을 추출하는 방법:

에디터 로딩 중...

Part 4: 데이터 파이프라인 통합 패턴

실무에서 SHACL 검증을 파이프라인에 통합하는 패턴:

에디터 로딩 중...

실습 과제

  1. Part 1의 코드를 실행하여 올바른 데이터가 검증 통과되는지 확인
  2. Part 2에서 위반 사항 6개가 모두 보고되는지 확인
  3. Part 3으로 위반 사항을 프로그래밍으로 파싱
  4. 도전: ex:Professor Shape을 추가하세요 (이름 필수, 이메일 패턴, 소속 학과 필수)
에디터 로딩 중...
힌트 보기
  • pip install pyshacl rdflib 로 먼저 패키지 설치
  • Turtle 문법에서 세미콜론(;)은 같은 주어의 다음 프로퍼티
  • sh:pattern은 정규표현식 — 백슬래시 이스케이프 주의
  • abort_on_first=False로 설정하면 모든 위반 사항을 수집
  • inference='rdfs'를 넣으면 RDFS 추론 후 검증 (클래스 상속 등)
정답 보기
에디터 로딩 중...