"Integrated Curation Data Model: Storyline Data"의 두 판 사이의 차이

Digerati
이동: 둘러보기, 검색
(새 문서: ==Database Schema== ※ Storyline Data는 Factcual Data와 다른 이름을 갖는 독립적 Data Set입니다. Storyline Data의 Edge Table은 Node Table로부터 자동 변환합...)
 
 
62번째 줄: 62번째 줄:
 
where nextNode is Not Null
 
where nextNode is Not Null
 
</pre>
 
</pre>
 +
 +
==Data Service Tools==
 +
 +
====StoryMenu.py====
 +
 +
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/StoryMenu.py</nowiki>
 +
* 매개 변수: db = Database Name, project = Storyline Table Prefix
 +
* 기능: 스토리텔링 데이터 풀에 등록된 이야기외 최상위 노드 목록 반환
 +
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/StoryMenu.py?db=common&project=narrative
 +
 +
====Storyline.py====
 +
 +
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/StoryLine.py</nowiki>
 +
* 매개 변수: db = Database Name, project = Storyline Table Prefix, key =  Storyline Node Identifier
 +
* 기능: 지정 노드를 중심으로 상, 하, 전, 후의 이야기 문맥 노드 반환
 +
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/StoryLine.py?db=common&project=narrative&key=T190429K-D

2019년 5월 21일 (화) 08:50 기준 최신판

Database Schema

※ Storyline Data는 Factcual Data와 다른 이름을 갖는 독립적 Data Set입니다. Storyline Data의 Edge Table은 Node Table로부터 자동 변환합니다.

Node Table Schema

create table yyyData (
	id nvarchar(40) not null,
	class nvarchar(16) null,
	upperNode nvarchar(40) null,
	nextNode nvarchar(40) null,
	label nvarchar(80) null,
	infoUrl nvarchar(256) null,
	iconUrl nvarchar(256) null,
	primary key(id)
)

Edge Table Schema

create table yyyLinks (
	source  nvarchar(40)  not null,
	target  nvarchar(40) not null,
	relation nvarchar(40) not null,
	attribute nvarchar(40) null,
	primary key (source, target, relation )
)

Object Properties

* hasTopic
* hasEpisode
* hasFactualComponent
* isPreviousInSequence
* isNextInSequence

SQL Script

Insert Storyline Node Data

insert into yyyData (id, class, upperNode, nextNode, label, infoUrl, iconUrl )
select id, class, upperNode, nextNode, label, infoUrl, iconUrl from yyyData$

Generate Storyline Link Data

-- hasTopic
insert into yyyLinks (source, target, relation )
select upperNode, id, 'hasTopic' from yyyData$
where class='Topic' and upperNode is Not Null 

-- hasEpisode
insert into yyyLinks (source, target, relation )
select upperNode, id, 'hasEpisode' from yyyData$
where class='Episode' and upperNode is Not Null

-- isPeviousInSequence
insert into yyyLinks (source, target, relation )
select id, nextNode, 'isPreviousInSequence' from yyyData$
where nextNode is Not Null

Data Service Tools

StoryMenu.py

Storyline.py