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

Digerati
이동: 둘러보기, 검색
(→‎시맨틱 데이터베이스 관리 도구 (Python Program))
(문서 내용을 "==사실과 문맥 (Factual Data)== Integrated Curation Data Model: Factual Data ==정보의 분류 (Category Data)== Integrated Curation Data Model: Cate..."으로 바꿈)
1번째 줄: 1번째 줄:
−
==Database Schema==
+
==사실과 문맥 (Factual Data)==
  
−
===Factual Data===
+
[[Integrated Curation Data Model: Factual Data]]
  
−
====Node Tabel Schema: xxxData ====
+
==정보의 분류 (Category Data)==
−
<pre>
 
−
create table concertData (
 
−
id nvarchar(40) not null,
 
−
class nvarchar(16) null,
 
−
groupName nvarchar(16) null,
 
−
partName nvarchar(40) null,
 
−
label nvarchar(80) null,
 
−
infoUrl nvarchar(256) null,
 
−
iconUrl nvarchar(256) null,
 
−
primary key(id)
 
−
)
 
−
</pre>
 
  
−
====Edge Table Schema: xxxLinks ====
+
[[Integrated Curation Data Model: Category Data]]
−
<pre>
 
−
create table concertLinks (
 
−
source  nvarchar(40)  not null,
 
−
target  nvarchar(40) not null,
 
−
relation nvarchar(40) not null,
 
−
attribute nvarchar(40) null,
 
−
primary key (source, target, relation )
 
−
)
 
−
</pre>
 
  
−
===Category Data===
+
==나의 이야기 (Storyline Data)==
  
−
※ 분류 색인 서비스를 위한 Category Data는 Factual Data Node의 속성 정보에서 기계적으로 추출합니다. 
+
[[Integrated Curation Data Model: Storyline Data]]
  
−
====Node Table Schema: xxxSchema====
+
==시맨틱 데이터 서비스 도구 (Semantic Data Service Tools)==
−
<pre>
 
−
create table xxxSchema (
 
−
id nvarchar(40) not null,
 
−
class nvarchar(16) null,
 
−
groupName nvarchar(16) null,
 
−
partName nvarchar(40) null,
 
−
label nvarchar(80) null,
 
−
infoUrl nvarchar(256) null,
 
−
iconUrl nvarchar(256) null,
 
−
primary key(id)
 
−
)
 
  
−
/* Virtual View: xxxNodes */
+
[[Integrated Curation Data Model: Semantic Data Service Tools]]
−
 
 
−
create view xxxNodes as
 
−
select * from concertData
 
−
union
 
−
select * from concertSchema
 
−
</pre>
 
−
 
 
−
====Edge Table Schema: xxxCategory====
 
−
<pre>
 
−
create table xxxCategory (
 
−
source  nvarchar(40)  not null,
 
−
target  nvarchar(40) not null,
 
−
relation nvarchar(40) not null,
 
−
attribute nvarchar(40) null,
 
−
primary key (source, target, relation )
 
−
)
 
−
</pre>
 
−
 
 
−
====Object Properties====
 
−
<pre>
 
−
* hasCategory
 
−
* hasMember
 
−
</pre>
 
−
 
 
−
===Storyline Data===
 
−
 
 
−
※ Storyline Data는 Factcual Data와 다른 이름을 갖는 독립적 Data Set입니다. Storyline Data의 Edge Table은 Node Table로부터 자동 변환합니다.
 
−
 
 
−
====Node Table Schema====
 
−
<pre>
 
−
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)
 
−
)
 
−
</pre>
 
−
 
 
−
====Edge Table Schema====
 
−
<pre>
 
−
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 )
 
−
)
 
−
</pre>
 
−
 
 
−
====Object Properties====
 
−
<pre>
 
−
* hasTopic
 
−
* hasEpisode
 
−
* hasFactualComponent
 
−
* isPreviousInSequence
 
−
* isNextInSequence
 
−
</pre>
 
−
 
 
−
==SQL Script==
 
−
 
 
−
 
 
−
===Factual Data 처리===
 
−
<pre>
 
−
/* insert node data */
 
−
 
 
−
insert into xxxData (id, class, groupName, partName, label, infoUrl, iconUrl )
 
−
select id, class, groupName, partName, label, infoUrl, iconUrl 
 
−
from xxxData$
 
−
 
 
−
/* insert link data */
 
−
 
 
−
insert into xxxLinks (source, target, relation)
 
−
select source, target, relation from xxxLinks$
 
−
 
 
−
</pre>
 
−
 
 
−
===Category Data 처리===
 
−
<pre>
 
−
/* xxxSchema 데이터 처리 자동화 Script */
 
−
 
 
−
insert into xxxSchema (id, class, groupName, label)
 
−
values ('Thing', 'Category', 'Top', 'Thing' )
 
−
 
 
−
insert into xxxSchema (id, class, groupName, label)
 
−
select class as id, 'Category' as class, 'Thing' groupName, class as label
 
−
from concertData
 
−
group by class
 
−
 
 
−
insert into xxxSchema (id, class, groupName, label)
 
−
select groupName as id, 'Category' as class, class as groupName, groupName as label
 
−
from concertData
 
−
where groupName is not NULL
 
−
group by class, groupName
 
−
 
 
−
insert into xxxSchema (id, class, groupName, label)
 
−
select partName as id, 'Category' as class, groupName, partName as label
 
−
from concertData
 
−
where partName is not NULL
 
−
group by groupName, partName
 
−
 
 
−
/* xxxCategory 데이터 처리 자동화 Script */
 
−
 
 
−
-- hasCategory (top->1st)
 
−
insert into concertCategory (source, target, relation )
 
−
select 'Thing' as source, class as target, 'hasCategory' as 'relation' from concertData
 
−
group by class
 
−
 
 
−
-- hasCategory (1st->2nd)
 
−
insert into concertCategory (source, target, relation )
 
−
select class as source, groupName as target, 'hasCategory' as 'relation' from concertData
 
−
where groupName is not NULL
 
−
group by class, groupName
 
−
 
 
−
-- hasCategory (2nd->3rd)
 
−
insert into concertCategory (source, target, relation )
 
−
select groupName as source, partName as target, 'hasCategory' as 'relation' from concertData
 
−
where partName is not NULL
 
−
group by class, groupName, partName
 
−
 
 
−
-- hasMember (Major Category)
 
−
insert into concertCategory (source, target, relation )
 
−
select class as source, id as target, 'hasMember' as 'relation' from concertData
 
−
where groupName is NULL
 
−
order by class, id
 
−
 
 
−
-- hasMember  (2nd Category)
 
−
insert into concertCategory (source, target, relation )
 
−
select groupName as source, id as target, 'hasMember' as 'relation' from concertData
 
−
where groupName is not NULL and partName is NULL
 
−
order by groupName, id
 
−
 
 
−
-- hasMember  (3rd Category)
 
−
insert into concertCategory (source, target, relation )
 
−
select partName as source, id as target, 'hasMember' as 'relation' from concertData
 
−
where partName is not NULL
 
−
order by partName, id
 
−
</pre>
 
−
 
 
−
===Storyline Data 처리===
 
−
<pre>
 
−
/* 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
 
−
</pre>
 
−
 
 
−
==시맨틱 데이터베이스 관리 도구 (Python Program)==
 
−
 
 
−
===Factual Data 서비스===
 
−
 
 
−
====Story01.py====
 
−
 
 
−
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/Story01.py</nowiki>
 
−
* 매개 변수: db = Database Name, project = Data Table Prefix, key = Factual Data Node Identifier
 
−
* 기능: Core Node를 중심으로 하는 1 Hop 네트워크 그래프 반환
 
−
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/Story01.py?db=tutor&project=concert&key=Handel
 
−
 
 
−
====Story02.py====
 
−
 
 
−
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/Story02.py</nowiki>
 
−
* 매개 변수: db = Database Name, project = Data Table Prefix, key = Factual Data Node Identifier
 
−
* 기능: Core Node를 중심으로 하는 2 Hop 네트워크 그래프 반환
 
−
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/Story02.py?db=tutor&project=concert&key=Handel
 
−
 
 
−
====Query.py====
 
−
 
 
−
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/Query.py</nowiki>
 
−
* 매개 변수: db = Database Name, project = Data Table Prefix, key = String
 
−
* 기능: 주어진 문자열을 포함하는 데이터의 노드 리스트 반환
 
−
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/Query.py?db=tutor&project=concert&key=Paganini
 
−
 
 
−
===Catelog Data 서비스===
 
−
 
 
−
====Category.py====
 
−
 
 
−
* URL: <nowiki>http://dh.aks.ac.kr/cgi-bin/encyves/Category.py</nowiki>
 
−
* 매개 변수: db = Database Name, project = Data Table Prefix, key = Category Name
 
−
* 기능: 주어진 카테고리에 속하는 Factual Data 노드 또는 하위 카테고리 목록 반환
 
−
* 예시: http://dh.aks.ac.kr/cgi-bin/encyves/Category.py?db=tutor&project=concert&key=Movie
 
−
 
 
−
===Storyline Data 서비스===
 
−
 
 
−
====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=tutor&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=tutor&project=narrative&key=T190429K-D
 

2019년 5월 20일 (월) 15:29 판

사실과 문맥 (Factual Data)

Integrated Curation Data Model: Factual Data

정보의 분류 (Category Data)

Integrated Curation Data Model: Category Data

나의 이야기 (Storyline Data)

Integrated Curation Data Model: Storyline Data

시맨틱 데이터 서비스 도구 (Semantic Data Service Tools)

Integrated Curation Data Model: Semantic Data Service Tools