행위

"DongraebakuiSemanticData"의 두 판 사이의 차이

red

(Cypher Query 작성)
(Cypher Query 작성)
124번째 줄: 124번째 줄:
 
- 논평과 그 저자를 출력:<span style="color: green">match (a:논평) - [r:creator] -> [b:Person] return a, r, b</span><br/>
 
- 논평과 그 저자를 출력:<span style="color: green">match (a:논평) - [r:creator] -> [b:Person] return a, r, b</span><br/>
 
- 최종 정리: <b><span style="color: green">match (a:Person) where a.name='정 장공' - [r:refersToNegatively] -> (b:논평) - [s:creator] -> [c:Person] return c</span></b><br/>
 
- 최종 정리: <b><span style="color: green">match (a:Person) where a.name='정 장공' - [r:refersToNegatively] -> (b:논평) - [s:creator] -> [c:Person] return c</span></b><br/>
- 실제 적용:match (a:Person{name:'정 장공'})-[r:refersToNegatively]-(b:`논평`)-[s:contains]-(c:`권차`)-[p:hasPart]-(d:`문헌`)-[q:creator]-(e:Person) return a,b,c,d,e <br/>
+
- 실제 적용:<span style="color: green"> match (a:Person{name:'정 장공'})-[r:refersToNegatively]-(b:`논평`)-[s:contains]-(c:`권차`)-[p:hasPart]-(d:`문헌`)-[q:creator]-(e:Person) return a,b,c,d,e</span> <br/>
 
<br/>
 
<br/>
 
● 문제의식2: <span style="color: blue">여조겸(Person)이 작성한 논평(Comment)에서 긍정적으로 언급된(Relation) 인물(Person)이 등장(Relation)한 사건(Episode)을 출력</span><br/>
 
● 문제의식2: <span style="color: blue">여조겸(Person)이 작성한 논평(Comment)에서 긍정적으로 언급된(Relation) 인물(Person)이 등장(Relation)한 사건(Episode)을 출력</span><br/>
 
-문제의식의 맥락: <span style="color: navy">동래박의 내 논평에서 긍정적으로 언급한 인물이 등장한 사건을 출력</span><br/>
 
-문제의식의 맥락: <span style="color: navy">동래박의 내 논평에서 긍정적으로 언급한 인물이 등장한 사건을 출력</span><br/>
 
○ 질의어(문제의식2) 작성<br/>
 
○ 질의어(문제의식2) 작성<br/>
- 동래박의를 선택해서 출력 : match (a:문헌) where a.name='동래박의' return a <br/>
+
- 동래박의를 선택해서 출력 : <span style="color: green"> match (a:문헌) where a.name='동래박의' return a </span><br/>
 
- 동래박의 내 논평을 출력 : <br/>  
 
- 동래박의 내 논평을 출력 : <br/>  
1) 동래박의 내 모든 권차를 출력 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] return a, r, b <br/>  
+
1) 동래박의 내 모든 권차를 출력 : <span style="color: green"> match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] return a, r, b </span><br/>  
2) 동래박의 내 모든 권차의 모든 논평을 출력 : match (a:권차) - [r:contains] -> [b:논평] return a, r, b <br/>
+
2) 동래박의 내 모든 권차의 모든 논평을 출력 : <span style="color: green"> match (a:권차) - [r:contains] -> [b:논평] return a, r, b </span><br/>
3) 정리 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] return c <br/>  
+
3) 정리 : <span style="color: green"> match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] return c </span><br/>  
- 논평에서 긍정적으로 언급한 인물 출력 : match (a:논평) - [r:refersToPositively] -> [b:인물] return a,r,b <br/>
+
- 논평에서 긍정적으로 언급한 인물 출력 : <span style="color: green"> match (a:논평) - [r:refersToPositively] -> [b:인물] return a,r,b </span><br/>
- 인물이 등장한 사건을 출력 : match (a:Person) -[r:isRelatedTo]-[b:사건] return a,r,b<br/>
+
- 인물이 등장한 사건을 출력 : <span style="color: green"> match (a:Person) -[r:isRelatedTo]-[b:사건] return a,r,b</span><br/>
- 최종 정리 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] -> [p:refersToPositively] -> [d:인물] -> [q:isRelatedTo]-[e:사건] return a,b,c,d,e <br/>
+
- 최종 정리 : <span style="color: green"> match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] -> [p:refersToPositively] -> [d:인물] -> [q:isRelatedTo]-[e:사건] return a,b,c,d,e </span><br/>
 
<br/>
 
<br/>
 
● 문제의식3: <span style="color: blue">살해 사건(a:살해)에 등장한 인물(Person)을 긍정적으로 언급한 모든 논평을 출력</span><br/>
 
● 문제의식3: <span style="color: blue">살해 사건(a:살해)에 등장한 인물(Person)을 긍정적으로 언급한 모든 논평을 출력</span><br/>
 
-문제의식의 맥락: <span style="color: navy">(역 : 모든 논평에서 긍정적으로 언급된 인물 중 살해 사건과 연관된 인물 출력) = 살해 사건에 연관되었는데도 긍정적으로 평가받은 인물이 누가 있는가?</span><br/>
 
-문제의식의 맥락: <span style="color: navy">(역 : 모든 논평에서 긍정적으로 언급된 인물 중 살해 사건과 연관된 인물 출력) = 살해 사건에 연관되었는데도 긍정적으로 평가받은 인물이 누가 있는가?</span><br/>
 
○ 질의어(문제의식3) 작성<br/>
 
○ 질의어(문제의식3) 작성<br/>
- 논평에서 긍정적으로 언급한 인물 출력 : match (a:논평) - [r:refersToPositively] -> [b:Person] return a,r,b <br/>
+
- 논평에서 긍정적으로 언급한 인물 출력 : <span style="color: green"> match (a:논평) - [r:refersToPositively] -> [b:Person] return a,r,b </span><br/>
- 살해 사건 출력 : match (a:`사건`) where a.type=`살해` return a<br/>
+
- 살해 사건 출력 : <span style="color: green"> match (a:`사건`) where a.type=`살해` return a</span><br/>
- 살해 사건에 등장한 인물 출력 : match (a:`사건`) where a.type=`살해` - [r:isRelatedTo] - (b:Person) return a, r, b<br/>
+
- 살해 사건에 등장한 인물 출력 : <span style="color: green"> match (a:`사건`) where a.type=`살해` - [r:isRelatedTo] - (b:Person) return a, r, b</span><br/>
- 최종 정리 : match (a:논평) - [r:refersToPositively] -> (b:Person) - [s:isRelatedTo] - (c:`사건`) where c.type='살해' return a,r, b <br/>
+
- 최종 정리 : <span style="color: green"> match (a:논평) - [r:refersToPositively] -> (b:Person) - [s:isRelatedTo] - (c:`사건`) where c.type='살해' return a,r, b </span><br/>
- 실제 사용 : match (a:`논평`)-[r:refersToNegatively]-(b:Person)-[s:isRelatedTo]-(c:`사건`{type:'살해'}) return a,b,c <br/>  
+
- 실제 사용 : <span style="color: green"> match (a:`논평`)-[r:refersToNegatively]-(b:Person)-[s:isRelatedTo]-(c:`사건`{type:'살해'}) return a,b,c </span><br/>  
 
</big>
 
</big>
 
<br/>
 
<br/>

2021년 5월 27일 (목) 17:48 판

한문학데이터큐레이션 강의 페이지로 가기


『동래박의』 논평 시맨틱 데이터 구현 및 분석



연구 목적

春秋 代에 발생한 여러 사건들은 동아시아 지역에서 역사적 전거로 많이 활용되었고, 식자층들은 東萊博義, 史記列傳 등 이러한 사건에 대한 비평을 다룬 서적들을 읽으며 과거시험에 대비할 뿐만 아니라 사상적 근간을 구성해나갔다. 따라서 과거제 도입 이후 식자층의 윤리관 및 사상적 저변을 이해하기 위해서는 춘추 시기 역사적 사건을 다룬 텍스트를 어떻게 전유하였는지, 사건과 인물에 대해서 어떻게 인식하고 있는지를 파악해야 한다. 그러나 이러한 인식을 엿볼 수 있는 주된 자료라 할 수 있는 春秋 時代에 발생한 여러 사건에 대한 비평은 문집 中 雜書 등에 흩어져 있어 한눈에 확인이 어렵고, 이로 인해 역사 인식에 대한 전체적인 흐름을 구상하는 작업에도 난점이 생긴다. 따라서 본 연구에서는 春秋 代 여러 사건과 사건에 대한 논평을 시멘틱 데이터로 구현하여 이러한 문제를 해결하고자 한다.
본 연구에서는 ①春秋 時代에 발생한 사건을 개별 노드로 구성하고, ②이 사건들에 대한 東萊博義, 한국문집총간 내 문집에 수록된 논평을 링크로 연결함으로써 ③사건-사건의 등장인물-논평의 관계망을 시각적으로 구현하고자 한다. 이러한 시각적 구현을 통해 ①春秋 時代에 일어난 여러 사건들을 시각적으로 파악할 수 있다. 또한 ②역사적 사건 속 인물에 대한 평가를 관계망 형태로 구현하였기 때문에 특정 인물에 대한 다양한 의견과 논의를 발견하는 것도 가능하다. 부수적으로, ③어떤 사건이나 인물이 함축하고 있는 가치가 있다면 해당 가치에 대한 인식을 탐구하는 후속 연구에서도 본 데이터를 활용하고자 한다.

연구 대상

연구 대상
명칭 저자 설명
『春秋左傳』 좌구명 春秋 원문만으로 당시의 사건을 언급하는 데 어려움이 있기에, 춘추좌전에 다루는 사건들을 위주로 관계망을 구성하고자 한다.
『東萊博義』 여조겸 春秋 時代의 사건에 대한 여러 논평이 있다. 문집에서 드러나는 여러 논평에서 東萊博義 속 논평을 언급하며 자신의 주장을 펴는 경우가 많기에, 본 연구에서 꼭 다루어야 하는 중점적 텍스트로 설정하였다.
한국문집총간 내 문집 전체 - 검색 기능을 활용해 역사적 사건과 사건 속 인물에 대한 논평을 추출하여 연구하고자 한다.


연구 방법

온톨로지 설계

온톨로지 다이어그램


클래스(Class)

명칭 설명
문헌 동래박의, 춘추좌전 등 독립된 문헌이다.
권차 문헌 내 텍스트 위치를 수월하게 나타내기 위해, 권차 클래스를 따로 설정하였다. 권차는 텍스트별로 존재한다.
기사 역사서에서 주로 사용되는 Class로, 사건이 수록되어 있는 기사들이다. 사건에 대해 비교적 객관적으로 서술하였다고 볼 수 있다.
논평 본 연구에서 사건 혹은 인물에 대해 긍정적/부정적/중립적인 입장을 나타내는 글의 총칭이다.
사건 역사적 사건을 나타내는 Class이다. 하나의 기사에서 일어난 일을 하나의 사건으로 규정한다.
역사인물 사건 안에서 등장하는 모든 인물을 통칭한다.
인물 역사인물 이외 모든 인물들을 종합하는 Class이다. 본 연구에서는 주로 논평을 통해서 역사인물에 대해 긍정적/부정적/중립적 의견을 보인다.
속성 문헌의 속성을 역사서, 문집 등으로 정의하기 위하여 설정되었다. 이후 연구가 진행되면서 사건의 속성도 반영될 수 있다.

관계(Relation)

명칭 명령어 설명
다루다 deals 기사에서 특정한 사건을 다루거나, 논평에서 특정한 사건/인물에 대해 평할 때 사용한다.
저술하다 write 인물이 문헌/논평 등을 저술하였을 때 사용한다.
의_부분이다 isPartOf 기사/논평/권차가 특정 문헌에 속해 있을 때 사용한다.
의_등장인물이다 isMemberOf 역사인물이 특정 사건 속 등장인물일 경우 사용한다.
중립언급하다 neutrally_mentioned 논평에서 특정 인물에 대해 중립적으로 언급할 때 사용한다.
부정언급하다 negatively_mentioned 논평에서 특정 인물에 대해 부정적으로 언급할 때 사용한다.
긍정언급하다 positively_mentioned 논평에서 특정 인물에 대해 긍정적으로 언급할 때 사용한다.
속성을 가지다 hasAttribute 문헌/논평의 성격을 규정하거나, 사건의 유형을 정할 때 사용한다.

속성(Attribute)

문헌속성
속성명 설명
문집 역사적 사건에 대한 평론이 실려 있는 조선 대의 문집이다.
역사서 역사적 사건에 대한 기사가 실려있다. 본 연구에서는 춘추좌전을 의미한다.
비평서적 역사적 사건에 대해 다루고, 인물에 대해 비평한 서적이다. 본 연구에서는 동래박의를 의미한다.
사건속성
속성명 설명
살해 특정 인물을 살해한 사건에 부여한다.
회맹 회맹을 맺은 일에 부여한다.
정벌 지역을 정벌하거나, 특정 동기(보복 등)로 전쟁을 일으키는 경우에 부여한다.
사통 사통하는 사건에 부여한다.
기타 위 속성 이외의 사건에 부여한다.

데이터 샘플링

샘플 데이터 적용 네트워크 그래프

데이터 샘플링 결과 분석

샘플 데이터에 사용할 사건은 채중살옹규[1]를 사용하였다. 이 사건이 함축하고 있는 문제의식(여성은 남편과 아버지 중 어느 쪽을 택해야 하는가?)이 명확하고, 이로 인해 많은 논평이 존재하였기 때문이다.
샘플 데이터에서 알 수 있듯이, 본 사건에 대한 논평은 주로 역사인물 '옹희'를 다루고 있다. 옹희는 남편이 친아버지를 살해하려 하는 상황에서 선택해야 하는 당사자였다. 여기에서 옹희는 아버지를 선택하여 남편을 죽게 하는데, 이에 대해 동래박의에서는 채중이 졸렬한 인물이라 비판하는 한편 옹희에 대해서는 비교적 가치중립적으로 묘사한다. 그러나 조선의 여러 문집에서는 모두 옹희의 선택을 잘못된 것이라 비난하고 있으며, 이에 대해 언급하지 않은 동래박의 텍스트에 대해서도 비판한다. 이에 대한 대안으로 옹희가 자결하거나 양쪽을 모두 말리는 방식을 사용해야 한다고 하는데, 여기에서 '둘 중 하나를 고르는' 상황 자체를 용납하지 못하는 당시의 인식을 엿볼 수 있다.
이러한 방식으로 춘추 시대의 여러 사건을 분석한다면 소기의 연구 목적처럼 조선 식자층의 역사 인식을 분석하는 데 본 데이터를 활용할 수 있을 것이다.

연구 데이터

(내용 서술)

연구 결과

Cypher Query 작성

● 문제의식1: 정 장공(Person)을 부정적으로 언급(Relation)한 논평(Comment)의 저자(Create)를 출력.
○ 질의어(문제의식1) 작성
- 정 장공을 선택해서 출력: match (a:Person) where a.name='정 장공' return a
- 인물을 부정적으로 언급한 논평 출력: match (a:Person) - [r:refersToNegatively] -> (b:논평) return a, r, b
- 논평과 그 저자를 출력:match (a:논평) - [r:creator] -> [b:Person] return a, r, b
- 최종 정리: match (a:Person) where a.name='정 장공' - [r:refersToNegatively] -> (b:논평) - [s:creator] -> [c:Person] return c
- 실제 적용: match (a:Person{name:'정 장공'})-[r:refersToNegatively]-(b:`논평`)-[s:contains]-(c:`권차`)-[p:hasPart]-(d:`문헌`)-[q:creator]-(e:Person) return a,b,c,d,e

● 문제의식2: 여조겸(Person)이 작성한 논평(Comment)에서 긍정적으로 언급된(Relation) 인물(Person)이 등장(Relation)한 사건(Episode)을 출력
-문제의식의 맥락: 동래박의 내 논평에서 긍정적으로 언급한 인물이 등장한 사건을 출력
○ 질의어(문제의식2) 작성
- 동래박의를 선택해서 출력 : match (a:문헌) where a.name='동래박의' return a
- 동래박의 내 논평을 출력 :
1) 동래박의 내 모든 권차를 출력 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] return a, r, b
2) 동래박의 내 모든 권차의 모든 논평을 출력 : match (a:권차) - [r:contains] -> [b:논평] return a, r, b
3) 정리 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] return c
- 논평에서 긍정적으로 언급한 인물 출력 : match (a:논평) - [r:refersToPositively] -> [b:인물] return a,r,b
- 인물이 등장한 사건을 출력 : match (a:Person) -[r:isRelatedTo]-[b:사건] return a,r,b
- 최종 정리 : match (a:문헌) where a.name='동래박의' - [r:hasPart] -> [b:권차] - [s:contains] -> [c:논평] -> [p:refersToPositively] -> [d:인물] -> [q:isRelatedTo]-[e:사건] return a,b,c,d,e

● 문제의식3: 살해 사건(a:살해)에 등장한 인물(Person)을 긍정적으로 언급한 모든 논평을 출력
-문제의식의 맥락: (역 : 모든 논평에서 긍정적으로 언급된 인물 중 살해 사건과 연관된 인물 출력) = 살해 사건에 연관되었는데도 긍정적으로 평가받은 인물이 누가 있는가?
○ 질의어(문제의식3) 작성
- 논평에서 긍정적으로 언급한 인물 출력 : match (a:논평) - [r:refersToPositively] -> [b:Person] return a,r,b
- 살해 사건 출력 : match (a:`사건`) where a.type=`살해` return a
- 살해 사건에 등장한 인물 출력 : match (a:`사건`) where a.type=`살해` - [r:isRelatedTo] - (b:Person) return a, r, b
- 최종 정리 : match (a:논평) - [r:refersToPositively] -> (b:Person) - [s:isRelatedTo] - (c:`사건`) where c.type='살해' return a,r, b
- 실제 사용 : match (a:`논평`)-[r:refersToNegatively]-(b:Person)-[s:isRelatedTo]-(c:`사건`{type:'살해'}) return a,b,c

분석 결과

(내용 서술)

참고 자료

백진우. (2014). 조선시대 지식인들의 『동래박의(東萊博議)』 수용의 의의. 한국한문학연구, 54(0), 173-214.
안춘분. (2011). 『춘추(春秋)』의 다양한 비판견해(批判見解)를 통해 본 춘추시대정신. 동양철학연구, 65(0), 185-220.

주석

  1. 정 여공의 지시로 옹규가 자신의 장인 채중을 죽이려 하자, 그 아내 옹희는 그 사이에서 갈등하다 아버지에게 남편의 암살 음모를 미리 알린다. 이로 인해 남편 옹규는 죽는다.