@soddong/agentic-domain-artifact-standard 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.tbls.yml +54 -0
- package/CHANGELOG.md +94 -0
- package/README.md +386 -0
- package/dist/database.d.ts +8 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +76 -0
- package/dist/database.js.map +1 -0
- package/dist/fixtures.d.ts +11 -0
- package/dist/fixtures.d.ts.map +1 -0
- package/dist/fixtures.js +537 -0
- package/dist/fixtures.js.map +1 -0
- package/dist/index.d.ts +72 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +213 -0
- package/dist/index.js.map +1 -0
- package/dist/repositories.d.ts +46 -0
- package/dist/repositories.d.ts.map +1 -0
- package/dist/repositories.js +730 -0
- package/dist/repositories.js.map +1 -0
- package/dist/seed-apply.d.ts +20 -0
- package/dist/seed-apply.d.ts.map +1 -0
- package/dist/seed-apply.js +198 -0
- package/dist/seed-apply.js.map +1 -0
- package/dist/service.d.ts +40 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +105 -0
- package/dist/service.js.map +1 -0
- package/dist/types.d.ts +499 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/docs/build.md +27 -0
- package/docs/configuration.md +5 -0
- package/docs/delivery.md +26 -0
- package/docs/operations.md +28 -0
- package/docs/publishing.md +43 -0
- package/docs/schema/generated/README.md +38 -0
- package/docs/schema/generated/artifact_standard_blueprint_nodes.md +137 -0
- package/docs/schema/generated/artifact_standard_blueprint_nodes.svg +88 -0
- package/docs/schema/generated/artifact_standard_code_groups.md +70 -0
- package/docs/schema/generated/artifact_standard_code_groups.svg +49 -0
- package/docs/schema/generated/artifact_standard_codes.md +88 -0
- package/docs/schema/generated/artifact_standard_codes.svg +49 -0
- package/docs/schema/generated/artifact_standard_component_bindings.md +118 -0
- package/docs/schema/generated/artifact_standard_component_bindings.svg +73 -0
- package/docs/schema/generated/artifact_standard_components.md +114 -0
- package/docs/schema/generated/artifact_standard_components.svg +73 -0
- package/docs/schema/generated/artifact_standard_diagram_policies.md +99 -0
- package/docs/schema/generated/artifact_standard_diagram_policies.svg +49 -0
- package/docs/schema/generated/artifact_standard_document_blueprints.md +101 -0
- package/docs/schema/generated/artifact_standard_document_blueprints.svg +128 -0
- package/docs/schema/generated/artifact_standard_document_component_relations.md +118 -0
- package/docs/schema/generated/artifact_standard_document_component_relations.svg +87 -0
- package/docs/schema/generated/artifact_standard_document_components.md +148 -0
- package/docs/schema/generated/artifact_standard_document_components.svg +139 -0
- package/docs/schema/generated/artifact_standard_figure_policies.md +99 -0
- package/docs/schema/generated/artifact_standard_figure_policies.svg +49 -0
- package/docs/schema/generated/artifact_standard_generated_output_links.md +144 -0
- package/docs/schema/generated/artifact_standard_generated_output_links.svg +57 -0
- package/docs/schema/generated/artifact_standard_physical_structure_policies.md +124 -0
- package/docs/schema/generated/artifact_standard_physical_structure_policies.svg +78 -0
- package/docs/schema/generated/artifact_standard_schema_migrations.md +52 -0
- package/docs/schema/generated/artifact_standard_schema_migrations.svg +27 -0
- package/docs/schema/generated/artifact_standard_source_mappings.md +120 -0
- package/docs/schema/generated/artifact_standard_source_mappings.svg +49 -0
- package/docs/schema/generated/artifact_standard_standards.md +102 -0
- package/docs/schema/generated/artifact_standard_standards.svg +313 -0
- package/docs/schema/generated/artifact_standard_table_column_schemas.md +147 -0
- package/docs/schema/generated/artifact_standard_table_column_schemas.svg +52 -0
- package/docs/schema/generated/artifact_standard_table_schemas.md +99 -0
- package/docs/schema/generated/artifact_standard_table_schemas.svg +71 -0
- package/docs/schema/generated/artifact_standard_template_slots.md +143 -0
- package/docs/schema/generated/artifact_standard_template_slots.svg +88 -0
- package/docs/schema/generated/artifact_standard_validation_rule_set_rules.md +128 -0
- package/docs/schema/generated/artifact_standard_validation_rule_set_rules.svg +52 -0
- package/docs/schema/generated/artifact_standard_validation_rule_sets.md +91 -0
- package/docs/schema/generated/artifact_standard_validation_rule_sets.svg +71 -0
- package/docs/schema/generated/schema.json +4230 -0
- package/docs/schema/generated/schema.mmd +327 -0
- package/docs/schema/generated/schema.svg +510 -0
- package/docs/usage.md +197 -0
- package/package.json +30 -0
- package/src/database/migrations/0001_artifact_standard_base.sql +1295 -0
|
@@ -0,0 +1,1295 @@
|
|
|
1
|
+
PRAGMA foreign_keys = ON;
|
|
2
|
+
|
|
3
|
+
-- artifact-standard 패키지의 migration 적용 이력을 관리한다.
|
|
4
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_schema_migrations (
|
|
5
|
+
-- migration 식별자
|
|
6
|
+
migration_id VARCHAR(128) PRIMARY KEY,
|
|
7
|
+
|
|
8
|
+
-- migration 이름
|
|
9
|
+
migration_name VARCHAR(256) NOT NULL,
|
|
10
|
+
|
|
11
|
+
-- 적용 시각
|
|
12
|
+
applied_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
-- 코드 그룹을 정의한다.
|
|
16
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_code_groups (
|
|
17
|
+
-- 코드 그룹 식별자
|
|
18
|
+
code_group_code VARCHAR(64) PRIMARY KEY,
|
|
19
|
+
|
|
20
|
+
-- 코드 그룹 한글명
|
|
21
|
+
code_group_name VARCHAR(128) NOT NULL,
|
|
22
|
+
|
|
23
|
+
-- 코드 그룹 설명
|
|
24
|
+
description TEXT,
|
|
25
|
+
|
|
26
|
+
-- 표시 정렬 순서
|
|
27
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
28
|
+
|
|
29
|
+
-- 활성 여부. 1은 활성, 0은 비활성
|
|
30
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
31
|
+
CHECK (is_active IN (0, 1)),
|
|
32
|
+
|
|
33
|
+
-- 생성 시각
|
|
34
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
35
|
+
|
|
36
|
+
-- 수정 시각
|
|
37
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
-- 코드 그룹별 코드 값을 정의한다.
|
|
41
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_codes (
|
|
42
|
+
-- 코드 그룹 식별자
|
|
43
|
+
code_group_code VARCHAR(64) NOT NULL,
|
|
44
|
+
|
|
45
|
+
-- 코드 값. UPPER_SNAKE_CASE를 사용한다.
|
|
46
|
+
code VARCHAR(128) NOT NULL,
|
|
47
|
+
|
|
48
|
+
-- 코드 한글명
|
|
49
|
+
code_name VARCHAR(128) NOT NULL,
|
|
50
|
+
|
|
51
|
+
-- 코드 설명
|
|
52
|
+
description TEXT,
|
|
53
|
+
|
|
54
|
+
-- 표시 정렬 순서
|
|
55
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
56
|
+
|
|
57
|
+
-- 활성 여부. 1은 활성, 0은 비활성
|
|
58
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
59
|
+
CHECK (is_active IN (0, 1)),
|
|
60
|
+
|
|
61
|
+
-- 확장 메타데이터
|
|
62
|
+
metadata_json JSON
|
|
63
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
64
|
+
|
|
65
|
+
-- 생성 시각
|
|
66
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
67
|
+
|
|
68
|
+
-- 수정 시각
|
|
69
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
70
|
+
|
|
71
|
+
PRIMARY KEY (code_group_code, code),
|
|
72
|
+
|
|
73
|
+
FOREIGN KEY (code_group_code)
|
|
74
|
+
REFERENCES artifact_standard_code_groups (code_group_code)
|
|
75
|
+
ON DELETE CASCADE
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
-- 산출물 표준의 최상위 versioned definition을 관리한다.
|
|
79
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_standards (
|
|
80
|
+
-- 산출물 표준 식별자
|
|
81
|
+
artifact_standard_id CHAR(36) PRIMARY KEY
|
|
82
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
83
|
+
|
|
84
|
+
-- 산출물 표준 코드
|
|
85
|
+
artifact_standard_code VARCHAR(128) NOT NULL,
|
|
86
|
+
|
|
87
|
+
-- 산출물 표준 버전
|
|
88
|
+
artifact_standard_version VARCHAR(64) NOT NULL,
|
|
89
|
+
|
|
90
|
+
-- 산출물 표준명
|
|
91
|
+
artifact_standard_name VARCHAR(256) NOT NULL,
|
|
92
|
+
|
|
93
|
+
-- 산출물 표준 유형 코드
|
|
94
|
+
standard_type_code VARCHAR(64) NOT NULL DEFAULT 'DOCUMENT',
|
|
95
|
+
|
|
96
|
+
-- 산출물 표준 상태 코드
|
|
97
|
+
standard_status_code VARCHAR(64) NOT NULL DEFAULT 'DRAFT',
|
|
98
|
+
|
|
99
|
+
-- 산출물 표준 목적
|
|
100
|
+
purpose TEXT,
|
|
101
|
+
|
|
102
|
+
-- 산출물 표준 설명
|
|
103
|
+
description TEXT,
|
|
104
|
+
|
|
105
|
+
-- 소유 역할 코드
|
|
106
|
+
owner_role_code VARCHAR(128),
|
|
107
|
+
|
|
108
|
+
-- 활성 여부
|
|
109
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
110
|
+
CHECK (is_active IN (0, 1)),
|
|
111
|
+
|
|
112
|
+
-- 생성 시각
|
|
113
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
114
|
+
|
|
115
|
+
-- 수정 시각
|
|
116
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
117
|
+
|
|
118
|
+
-- 확장 메타데이터
|
|
119
|
+
metadata_json JSON
|
|
120
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
121
|
+
|
|
122
|
+
UNIQUE (artifact_standard_code, artifact_standard_version)
|
|
123
|
+
);
|
|
124
|
+
|
|
125
|
+
-- 산출물 표준을 구성하는 개념, 서식, 가이드, 예시, LLM 보충 지침 resource를 관리한다.
|
|
126
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_components (
|
|
127
|
+
-- component 식별자
|
|
128
|
+
component_id CHAR(36) PRIMARY KEY
|
|
129
|
+
CHECK (length(component_id) = 36),
|
|
130
|
+
|
|
131
|
+
-- 소속 산출물 표준 식별자
|
|
132
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
133
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
134
|
+
|
|
135
|
+
-- component 코드
|
|
136
|
+
component_code VARCHAR(128) NOT NULL,
|
|
137
|
+
|
|
138
|
+
-- component 유형 코드
|
|
139
|
+
component_type_code VARCHAR(64) NOT NULL,
|
|
140
|
+
|
|
141
|
+
-- component 제목
|
|
142
|
+
component_title VARCHAR(256) NOT NULL,
|
|
143
|
+
|
|
144
|
+
-- component 목적
|
|
145
|
+
component_purpose TEXT,
|
|
146
|
+
|
|
147
|
+
-- 적용 성격 코드
|
|
148
|
+
applicability_code VARCHAR(64) NOT NULL DEFAULT 'COMMON_REFERENCE',
|
|
149
|
+
|
|
150
|
+
-- 참조 유형 코드
|
|
151
|
+
resource_ref_type_code VARCHAR(64) NOT NULL DEFAULT 'FILE_PATH',
|
|
152
|
+
|
|
153
|
+
-- 참조 값
|
|
154
|
+
resource_ref VARCHAR(1024),
|
|
155
|
+
|
|
156
|
+
-- 표시 정렬 순서
|
|
157
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
158
|
+
|
|
159
|
+
-- 활성 여부
|
|
160
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
161
|
+
CHECK (is_active IN (0, 1)),
|
|
162
|
+
|
|
163
|
+
-- 생성 시각
|
|
164
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
165
|
+
|
|
166
|
+
-- 수정 시각
|
|
167
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
168
|
+
|
|
169
|
+
-- 확장 메타데이터
|
|
170
|
+
metadata_json JSON
|
|
171
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
172
|
+
|
|
173
|
+
FOREIGN KEY (artifact_standard_id)
|
|
174
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
175
|
+
ON DELETE CASCADE,
|
|
176
|
+
|
|
177
|
+
UNIQUE (artifact_standard_id, component_code)
|
|
178
|
+
);
|
|
179
|
+
|
|
180
|
+
-- component와 산출물 표준 구조 요소 간 적용 관계를 관리한다.
|
|
181
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_component_bindings (
|
|
182
|
+
-- component binding 식별자
|
|
183
|
+
component_binding_id CHAR(36) PRIMARY KEY
|
|
184
|
+
CHECK (length(component_binding_id) = 36),
|
|
185
|
+
|
|
186
|
+
-- 소속 산출물 표준 식별자
|
|
187
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
188
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
189
|
+
|
|
190
|
+
-- component 식별자
|
|
191
|
+
component_id CHAR(36) NOT NULL
|
|
192
|
+
CHECK (length(component_id) = 36),
|
|
193
|
+
|
|
194
|
+
-- 적용 대상 유형 코드
|
|
195
|
+
target_type_code VARCHAR(128) NOT NULL,
|
|
196
|
+
|
|
197
|
+
-- 적용 대상 참조
|
|
198
|
+
target_ref VARCHAR(256) NOT NULL,
|
|
199
|
+
|
|
200
|
+
-- binding 역할 코드
|
|
201
|
+
binding_role_code VARCHAR(128) NOT NULL,
|
|
202
|
+
|
|
203
|
+
-- 우선순위
|
|
204
|
+
priority INTEGER NOT NULL DEFAULT 100,
|
|
205
|
+
|
|
206
|
+
-- 적용 조건
|
|
207
|
+
applies_when_json JSON
|
|
208
|
+
CHECK (applies_when_json IS NULL OR json_valid(applies_when_json)),
|
|
209
|
+
|
|
210
|
+
-- 설명
|
|
211
|
+
description TEXT,
|
|
212
|
+
|
|
213
|
+
-- 활성 여부
|
|
214
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
215
|
+
CHECK (is_active IN (0, 1)),
|
|
216
|
+
|
|
217
|
+
-- 생성 시각
|
|
218
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
219
|
+
|
|
220
|
+
-- 수정 시각
|
|
221
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
222
|
+
|
|
223
|
+
-- 확장 메타데이터
|
|
224
|
+
metadata_json JSON
|
|
225
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
226
|
+
|
|
227
|
+
FOREIGN KEY (artifact_standard_id)
|
|
228
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
229
|
+
ON DELETE CASCADE,
|
|
230
|
+
|
|
231
|
+
FOREIGN KEY (component_id)
|
|
232
|
+
REFERENCES artifact_standard_components (component_id)
|
|
233
|
+
ON DELETE CASCADE,
|
|
234
|
+
|
|
235
|
+
UNIQUE (component_id, target_type_code, target_ref, binding_role_code)
|
|
236
|
+
);
|
|
237
|
+
|
|
238
|
+
-- 산출물 문서 구조 기준을 관리한다.
|
|
239
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_document_blueprints (
|
|
240
|
+
-- blueprint 식별자
|
|
241
|
+
blueprint_id CHAR(36) PRIMARY KEY
|
|
242
|
+
CHECK (length(blueprint_id) = 36),
|
|
243
|
+
|
|
244
|
+
-- 소속 산출물 표준 식별자
|
|
245
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
246
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
247
|
+
|
|
248
|
+
-- blueprint 코드
|
|
249
|
+
blueprint_code VARCHAR(128) NOT NULL,
|
|
250
|
+
|
|
251
|
+
-- blueprint 이름
|
|
252
|
+
blueprint_name VARCHAR(256) NOT NULL,
|
|
253
|
+
|
|
254
|
+
-- 문서 유형 코드
|
|
255
|
+
document_type_code VARCHAR(128) NOT NULL,
|
|
256
|
+
|
|
257
|
+
-- document taxonomy 코드
|
|
258
|
+
taxonomy_code VARCHAR(128),
|
|
259
|
+
|
|
260
|
+
-- 기본 TOC level limit
|
|
261
|
+
default_toc_level_limit INTEGER NOT NULL DEFAULT 3
|
|
262
|
+
CHECK (default_toc_level_limit >= 1),
|
|
263
|
+
|
|
264
|
+
-- 설명
|
|
265
|
+
description TEXT,
|
|
266
|
+
|
|
267
|
+
-- 생성 시각
|
|
268
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
269
|
+
|
|
270
|
+
-- 수정 시각
|
|
271
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
272
|
+
|
|
273
|
+
-- 확장 메타데이터
|
|
274
|
+
metadata_json JSON
|
|
275
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
276
|
+
|
|
277
|
+
FOREIGN KEY (artifact_standard_id)
|
|
278
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
279
|
+
ON DELETE CASCADE,
|
|
280
|
+
|
|
281
|
+
UNIQUE (artifact_standard_id, blueprint_code)
|
|
282
|
+
);
|
|
283
|
+
|
|
284
|
+
-- blueprint 내 목차 또는 논리 섹션 node를 관리한다.
|
|
285
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_blueprint_nodes (
|
|
286
|
+
-- blueprint node 식별자
|
|
287
|
+
blueprint_node_id CHAR(36) PRIMARY KEY
|
|
288
|
+
CHECK (length(blueprint_node_id) = 36),
|
|
289
|
+
|
|
290
|
+
-- 소속 blueprint 식별자
|
|
291
|
+
blueprint_id CHAR(36) NOT NULL
|
|
292
|
+
CHECK (length(blueprint_id) = 36),
|
|
293
|
+
|
|
294
|
+
-- 부모 blueprint node 식별자
|
|
295
|
+
parent_blueprint_node_id CHAR(36)
|
|
296
|
+
CHECK (parent_blueprint_node_id IS NULL OR length(parent_blueprint_node_id) = 36),
|
|
297
|
+
|
|
298
|
+
-- node 코드
|
|
299
|
+
node_code VARCHAR(128) NOT NULL,
|
|
300
|
+
|
|
301
|
+
-- node 제목
|
|
302
|
+
node_title VARCHAR(256) NOT NULL,
|
|
303
|
+
|
|
304
|
+
-- node 유형 코드
|
|
305
|
+
node_type_code VARCHAR(64) NOT NULL DEFAULT 'BODY',
|
|
306
|
+
|
|
307
|
+
-- node level. ToC level 또는 논리 section level로 사용한다.
|
|
308
|
+
node_level INTEGER NOT NULL DEFAULT 1
|
|
309
|
+
CHECK (node_level >= 1),
|
|
310
|
+
|
|
311
|
+
-- 목차 표시 여부
|
|
312
|
+
toc_visible INTEGER NOT NULL DEFAULT 1
|
|
313
|
+
CHECK (toc_visible IN (0, 1)),
|
|
314
|
+
|
|
315
|
+
-- 필수 여부
|
|
316
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
317
|
+
CHECK (is_required IN (0, 1)),
|
|
318
|
+
|
|
319
|
+
-- 반복 가능 여부
|
|
320
|
+
is_repeatable INTEGER NOT NULL DEFAULT 0
|
|
321
|
+
CHECK (is_repeatable IN (0, 1)),
|
|
322
|
+
|
|
323
|
+
-- 반복 context 코드
|
|
324
|
+
repeat_context_code VARCHAR(128),
|
|
325
|
+
|
|
326
|
+
-- document taxonomy 또는 node type 참조
|
|
327
|
+
taxonomy_ref VARCHAR(256),
|
|
328
|
+
|
|
329
|
+
-- 설명
|
|
330
|
+
description TEXT,
|
|
331
|
+
|
|
332
|
+
-- 표시 정렬 순서
|
|
333
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
334
|
+
|
|
335
|
+
-- 생성 시각
|
|
336
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
337
|
+
|
|
338
|
+
-- 수정 시각
|
|
339
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
340
|
+
|
|
341
|
+
-- 확장 메타데이터
|
|
342
|
+
metadata_json JSON
|
|
343
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
344
|
+
|
|
345
|
+
FOREIGN KEY (blueprint_id)
|
|
346
|
+
REFERENCES artifact_standard_document_blueprints (blueprint_id)
|
|
347
|
+
ON DELETE CASCADE,
|
|
348
|
+
|
|
349
|
+
FOREIGN KEY (parent_blueprint_node_id)
|
|
350
|
+
REFERENCES artifact_standard_blueprint_nodes (blueprint_node_id)
|
|
351
|
+
ON DELETE CASCADE,
|
|
352
|
+
|
|
353
|
+
UNIQUE (blueprint_id, node_code)
|
|
354
|
+
);
|
|
355
|
+
|
|
356
|
+
-- blueprint node 내 section, table, figure, diagram 등이 들어갈 slot을 관리한다.
|
|
357
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_template_slots (
|
|
358
|
+
-- slot 식별자
|
|
359
|
+
template_slot_id CHAR(36) PRIMARY KEY
|
|
360
|
+
CHECK (length(template_slot_id) = 36),
|
|
361
|
+
|
|
362
|
+
-- 소속 blueprint 식별자
|
|
363
|
+
blueprint_id CHAR(36) NOT NULL
|
|
364
|
+
CHECK (length(blueprint_id) = 36),
|
|
365
|
+
|
|
366
|
+
-- 소속 blueprint node 식별자
|
|
367
|
+
blueprint_node_id CHAR(36)
|
|
368
|
+
CHECK (blueprint_node_id IS NULL OR length(blueprint_node_id) = 36),
|
|
369
|
+
|
|
370
|
+
-- 부모 slot 식별자
|
|
371
|
+
parent_template_slot_id CHAR(36)
|
|
372
|
+
CHECK (parent_template_slot_id IS NULL OR length(parent_template_slot_id) = 36),
|
|
373
|
+
|
|
374
|
+
-- slot 코드
|
|
375
|
+
slot_code VARCHAR(128) NOT NULL,
|
|
376
|
+
|
|
377
|
+
-- slot 이름
|
|
378
|
+
slot_name VARCHAR(256) NOT NULL,
|
|
379
|
+
|
|
380
|
+
-- slot 유형 코드
|
|
381
|
+
slot_type_code VARCHAR(64) NOT NULL,
|
|
382
|
+
|
|
383
|
+
-- block 유형 코드
|
|
384
|
+
block_type_code VARCHAR(64),
|
|
385
|
+
|
|
386
|
+
-- slot 필수 여부
|
|
387
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
388
|
+
CHECK (is_required IN (0, 1)),
|
|
389
|
+
|
|
390
|
+
-- 반복 가능 여부
|
|
391
|
+
is_repeatable INTEGER NOT NULL DEFAULT 0
|
|
392
|
+
CHECK (is_repeatable IN (0, 1)),
|
|
393
|
+
|
|
394
|
+
-- 반복 context 코드
|
|
395
|
+
repeat_context_code VARCHAR(128),
|
|
396
|
+
|
|
397
|
+
-- schema 참조
|
|
398
|
+
schema_ref VARCHAR(256),
|
|
399
|
+
|
|
400
|
+
-- 설명
|
|
401
|
+
description TEXT,
|
|
402
|
+
|
|
403
|
+
-- 표시 정렬 순서
|
|
404
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
405
|
+
|
|
406
|
+
-- 생성 시각
|
|
407
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
408
|
+
|
|
409
|
+
-- 수정 시각
|
|
410
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
411
|
+
|
|
412
|
+
-- 확장 메타데이터
|
|
413
|
+
metadata_json JSON
|
|
414
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
415
|
+
|
|
416
|
+
FOREIGN KEY (blueprint_id)
|
|
417
|
+
REFERENCES artifact_standard_document_blueprints (blueprint_id)
|
|
418
|
+
ON DELETE CASCADE,
|
|
419
|
+
|
|
420
|
+
FOREIGN KEY (blueprint_node_id)
|
|
421
|
+
REFERENCES artifact_standard_blueprint_nodes (blueprint_node_id)
|
|
422
|
+
ON DELETE CASCADE,
|
|
423
|
+
|
|
424
|
+
FOREIGN KEY (parent_template_slot_id)
|
|
425
|
+
REFERENCES artifact_standard_template_slots (template_slot_id)
|
|
426
|
+
ON DELETE CASCADE,
|
|
427
|
+
|
|
428
|
+
UNIQUE (blueprint_id, slot_code)
|
|
429
|
+
);
|
|
430
|
+
|
|
431
|
+
-- 산출물 표준 문서의 본문, 부록 등 논리 document component를 관리한다.
|
|
432
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_document_components (
|
|
433
|
+
-- document component 식별자
|
|
434
|
+
document_component_id CHAR(36) PRIMARY KEY
|
|
435
|
+
CHECK (length(document_component_id) = 36),
|
|
436
|
+
|
|
437
|
+
-- 소속 산출물 표준 식별자
|
|
438
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
439
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
440
|
+
|
|
441
|
+
-- 관련 blueprint 식별자
|
|
442
|
+
blueprint_id CHAR(36)
|
|
443
|
+
CHECK (blueprint_id IS NULL OR length(blueprint_id) = 36),
|
|
444
|
+
|
|
445
|
+
-- 부모 document component 식별자
|
|
446
|
+
parent_document_component_id CHAR(36)
|
|
447
|
+
CHECK (parent_document_component_id IS NULL OR length(parent_document_component_id) = 36),
|
|
448
|
+
|
|
449
|
+
-- document component 코드
|
|
450
|
+
document_component_code VARCHAR(128) NOT NULL,
|
|
451
|
+
|
|
452
|
+
-- document component 이름
|
|
453
|
+
document_component_name VARCHAR(256) NOT NULL,
|
|
454
|
+
|
|
455
|
+
-- component 역할 코드. 본문, 부록, 보조자료, 통제정보 등을 구분한다.
|
|
456
|
+
component_role_code VARCHAR(64) NOT NULL DEFAULT 'MAIN'
|
|
457
|
+
CHECK (component_role_code IN ('MAIN', 'APPENDIX', 'SUPPORTING', 'CONTROL')),
|
|
458
|
+
|
|
459
|
+
-- component 유형 코드. 산출물 표준별로 정의하는 업무적 유형 코드다.
|
|
460
|
+
component_type_code VARCHAR(128) NOT NULL,
|
|
461
|
+
|
|
462
|
+
-- 표현 방식 코드. 하나의 document 내부 node인지, 별도 document인지 구분한다.
|
|
463
|
+
representation_code VARCHAR(64) NOT NULL DEFAULT 'SEPARATE_DOCUMENT'
|
|
464
|
+
CHECK (representation_code IN ('INTERNAL_NODE', 'SEPARATE_DOCUMENT')),
|
|
465
|
+
|
|
466
|
+
-- 논리 계층 level. 물리 폴더 깊이를 의미하지 않는다.
|
|
467
|
+
logical_level INTEGER NOT NULL DEFAULT 0
|
|
468
|
+
CHECK (logical_level >= 0),
|
|
469
|
+
|
|
470
|
+
-- 필수 여부
|
|
471
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
472
|
+
CHECK (is_required IN (0, 1)),
|
|
473
|
+
|
|
474
|
+
-- 반복 가능 여부
|
|
475
|
+
is_repeatable INTEGER NOT NULL DEFAULT 0
|
|
476
|
+
CHECK (is_repeatable IN (0, 1)),
|
|
477
|
+
|
|
478
|
+
-- 표시 정렬 순서
|
|
479
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
480
|
+
|
|
481
|
+
-- 설명
|
|
482
|
+
description TEXT,
|
|
483
|
+
|
|
484
|
+
-- 생성 시각
|
|
485
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
486
|
+
|
|
487
|
+
-- 수정 시각
|
|
488
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
489
|
+
|
|
490
|
+
-- 확장 메타데이터
|
|
491
|
+
metadata_json JSON
|
|
492
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
493
|
+
|
|
494
|
+
FOREIGN KEY (artifact_standard_id)
|
|
495
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
496
|
+
ON DELETE CASCADE,
|
|
497
|
+
|
|
498
|
+
FOREIGN KEY (blueprint_id)
|
|
499
|
+
REFERENCES artifact_standard_document_blueprints (blueprint_id)
|
|
500
|
+
ON DELETE SET NULL,
|
|
501
|
+
|
|
502
|
+
FOREIGN KEY (parent_document_component_id)
|
|
503
|
+
REFERENCES artifact_standard_document_components (document_component_id)
|
|
504
|
+
ON DELETE CASCADE,
|
|
505
|
+
|
|
506
|
+
UNIQUE (artifact_standard_id, document_component_code)
|
|
507
|
+
);
|
|
508
|
+
|
|
509
|
+
-- document component 간 논리 관계를 관리한다.
|
|
510
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_document_component_relations (
|
|
511
|
+
-- document component relation 식별자
|
|
512
|
+
document_component_relation_id CHAR(36) PRIMARY KEY
|
|
513
|
+
CHECK (length(document_component_relation_id) = 36),
|
|
514
|
+
|
|
515
|
+
-- 소속 산출물 표준 식별자
|
|
516
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
517
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
518
|
+
|
|
519
|
+
-- source document component 식별자
|
|
520
|
+
source_document_component_id CHAR(36) NOT NULL
|
|
521
|
+
CHECK (length(source_document_component_id) = 36),
|
|
522
|
+
|
|
523
|
+
-- target document component 식별자
|
|
524
|
+
target_document_component_id CHAR(36) NOT NULL
|
|
525
|
+
CHECK (length(target_document_component_id) = 36),
|
|
526
|
+
|
|
527
|
+
-- 관계 유형 코드
|
|
528
|
+
relation_type_code VARCHAR(64) NOT NULL
|
|
529
|
+
CHECK (relation_type_code IN ('CONTAINS', 'DETAILS', 'SUPPORTS', 'REFERENCES')),
|
|
530
|
+
|
|
531
|
+
-- 필수 관계 여부
|
|
532
|
+
is_required INTEGER NOT NULL DEFAULT 0
|
|
533
|
+
CHECK (is_required IN (0, 1)),
|
|
534
|
+
|
|
535
|
+
-- 표시 정렬 순서
|
|
536
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
537
|
+
|
|
538
|
+
-- 설명
|
|
539
|
+
description TEXT,
|
|
540
|
+
|
|
541
|
+
-- 생성 시각
|
|
542
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
543
|
+
|
|
544
|
+
-- 수정 시각
|
|
545
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
546
|
+
|
|
547
|
+
-- 확장 메타데이터
|
|
548
|
+
metadata_json JSON
|
|
549
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
550
|
+
|
|
551
|
+
FOREIGN KEY (artifact_standard_id)
|
|
552
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
553
|
+
ON DELETE CASCADE,
|
|
554
|
+
|
|
555
|
+
FOREIGN KEY (source_document_component_id)
|
|
556
|
+
REFERENCES artifact_standard_document_components (document_component_id)
|
|
557
|
+
ON DELETE CASCADE,
|
|
558
|
+
|
|
559
|
+
FOREIGN KEY (target_document_component_id)
|
|
560
|
+
REFERENCES artifact_standard_document_components (document_component_id)
|
|
561
|
+
ON DELETE CASCADE,
|
|
562
|
+
|
|
563
|
+
UNIQUE (source_document_component_id, target_document_component_id, relation_type_code)
|
|
564
|
+
);
|
|
565
|
+
|
|
566
|
+
-- document component의 논리 구조를 물리 파일/폴더 구조로 배치하는 정책을 관리한다.
|
|
567
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_physical_structure_policies (
|
|
568
|
+
-- physical structure policy 식별자
|
|
569
|
+
physical_structure_policy_id CHAR(36) PRIMARY KEY
|
|
570
|
+
CHECK (length(physical_structure_policy_id) = 36),
|
|
571
|
+
|
|
572
|
+
-- 소속 산출물 표준 식별자
|
|
573
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
574
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
575
|
+
|
|
576
|
+
-- 특정 document component에 한정되는 경우의 component 식별자
|
|
577
|
+
document_component_id CHAR(36)
|
|
578
|
+
CHECK (document_component_id IS NULL OR length(document_component_id) = 36),
|
|
579
|
+
|
|
580
|
+
-- physical structure policy 코드
|
|
581
|
+
policy_code VARCHAR(128) NOT NULL,
|
|
582
|
+
|
|
583
|
+
-- physical structure policy 이름
|
|
584
|
+
policy_name VARCHAR(256) NOT NULL,
|
|
585
|
+
|
|
586
|
+
-- 물리 배치 전략 코드
|
|
587
|
+
strategy_code VARCHAR(64) NOT NULL
|
|
588
|
+
CHECK (strategy_code IN ('HIERARCHICAL', 'GROUPED_BY_LEVEL', 'GROUPED_BY_PARENT', 'FLAT_WITH_MANIFEST')),
|
|
589
|
+
|
|
590
|
+
-- 물리 구조에서 관계를 해석하는 기준 원천
|
|
591
|
+
relation_source_code VARCHAR(64) NOT NULL DEFAULT 'DB'
|
|
592
|
+
CHECK (relation_source_code IN ('DB', 'MANIFEST', 'FILE_PATH')),
|
|
593
|
+
|
|
594
|
+
-- 경로 pattern
|
|
595
|
+
path_pattern VARCHAR(1024),
|
|
596
|
+
|
|
597
|
+
-- 파일명 pattern
|
|
598
|
+
naming_pattern VARCHAR(512),
|
|
599
|
+
|
|
600
|
+
-- 기본 정책 여부
|
|
601
|
+
is_default INTEGER NOT NULL DEFAULT 0
|
|
602
|
+
CHECK (is_default IN (0, 1)),
|
|
603
|
+
|
|
604
|
+
-- 설명
|
|
605
|
+
description TEXT,
|
|
606
|
+
|
|
607
|
+
-- 생성 시각
|
|
608
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
609
|
+
|
|
610
|
+
-- 수정 시각
|
|
611
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
612
|
+
|
|
613
|
+
-- 확장 메타데이터
|
|
614
|
+
metadata_json JSON
|
|
615
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
616
|
+
|
|
617
|
+
FOREIGN KEY (artifact_standard_id)
|
|
618
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
619
|
+
ON DELETE CASCADE,
|
|
620
|
+
|
|
621
|
+
FOREIGN KEY (document_component_id)
|
|
622
|
+
REFERENCES artifact_standard_document_components (document_component_id)
|
|
623
|
+
ON DELETE SET NULL,
|
|
624
|
+
|
|
625
|
+
UNIQUE (artifact_standard_id, policy_code)
|
|
626
|
+
);
|
|
627
|
+
|
|
628
|
+
-- 산출물 표 단위 schema를 관리한다.
|
|
629
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_table_schemas (
|
|
630
|
+
-- table schema 식별자
|
|
631
|
+
table_schema_id CHAR(36) PRIMARY KEY
|
|
632
|
+
CHECK (length(table_schema_id) = 36),
|
|
633
|
+
|
|
634
|
+
-- 소속 산출물 표준 식별자
|
|
635
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
636
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
637
|
+
|
|
638
|
+
-- table schema 코드
|
|
639
|
+
table_schema_code VARCHAR(128) NOT NULL,
|
|
640
|
+
|
|
641
|
+
-- table 이름
|
|
642
|
+
table_name VARCHAR(256) NOT NULL,
|
|
643
|
+
|
|
644
|
+
-- caption 필수 여부
|
|
645
|
+
caption_required INTEGER NOT NULL DEFAULT 1
|
|
646
|
+
CHECK (caption_required IN (0, 1)),
|
|
647
|
+
|
|
648
|
+
-- row 필수 여부
|
|
649
|
+
rows_required INTEGER NOT NULL DEFAULT 0
|
|
650
|
+
CHECK (rows_required IN (0, 1)),
|
|
651
|
+
|
|
652
|
+
-- 설명
|
|
653
|
+
description TEXT,
|
|
654
|
+
|
|
655
|
+
-- 생성 시각
|
|
656
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
657
|
+
|
|
658
|
+
-- 수정 시각
|
|
659
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
660
|
+
|
|
661
|
+
-- 확장 메타데이터
|
|
662
|
+
metadata_json JSON
|
|
663
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
664
|
+
|
|
665
|
+
FOREIGN KEY (artifact_standard_id)
|
|
666
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
667
|
+
ON DELETE CASCADE,
|
|
668
|
+
|
|
669
|
+
UNIQUE (artifact_standard_id, table_schema_code)
|
|
670
|
+
);
|
|
671
|
+
|
|
672
|
+
-- 산출물 표의 column 단위 schema를 관리한다.
|
|
673
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_table_column_schemas (
|
|
674
|
+
-- table column schema 식별자
|
|
675
|
+
table_column_schema_id CHAR(36) PRIMARY KEY
|
|
676
|
+
CHECK (length(table_column_schema_id) = 36),
|
|
677
|
+
|
|
678
|
+
-- 소속 table schema 식별자
|
|
679
|
+
table_schema_id CHAR(36) NOT NULL
|
|
680
|
+
CHECK (length(table_schema_id) = 36),
|
|
681
|
+
|
|
682
|
+
-- column 코드
|
|
683
|
+
column_code VARCHAR(128) NOT NULL,
|
|
684
|
+
|
|
685
|
+
-- 표시 column명
|
|
686
|
+
display_name VARCHAR(256) NOT NULL,
|
|
687
|
+
|
|
688
|
+
-- 값 유형 코드
|
|
689
|
+
value_type_code VARCHAR(64) NOT NULL DEFAULT 'TEXT',
|
|
690
|
+
|
|
691
|
+
-- 필수 여부
|
|
692
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
693
|
+
CHECK (is_required IN (0, 1)),
|
|
694
|
+
|
|
695
|
+
-- NULL 허용 여부
|
|
696
|
+
is_nullable INTEGER NOT NULL DEFAULT 0
|
|
697
|
+
CHECK (is_nullable IN (0, 1)),
|
|
698
|
+
|
|
699
|
+
-- 표시 정렬 순서
|
|
700
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
701
|
+
|
|
702
|
+
-- 코드셋 참조
|
|
703
|
+
code_set_ref VARCHAR(256),
|
|
704
|
+
|
|
705
|
+
-- 허용값 참조
|
|
706
|
+
allowed_values_ref VARCHAR(256),
|
|
707
|
+
|
|
708
|
+
-- validation rule 참조
|
|
709
|
+
validation_rule_ref VARCHAR(256),
|
|
710
|
+
|
|
711
|
+
-- 정규식 패턴
|
|
712
|
+
pattern VARCHAR(512),
|
|
713
|
+
|
|
714
|
+
-- 최소 숫자값
|
|
715
|
+
min_value DECIMAL,
|
|
716
|
+
|
|
717
|
+
-- 최대 숫자값
|
|
718
|
+
max_value DECIMAL,
|
|
719
|
+
|
|
720
|
+
-- 최소 길이
|
|
721
|
+
min_length INTEGER,
|
|
722
|
+
|
|
723
|
+
-- 최대 길이
|
|
724
|
+
max_length INTEGER,
|
|
725
|
+
|
|
726
|
+
-- 예시값
|
|
727
|
+
example_value TEXT,
|
|
728
|
+
|
|
729
|
+
-- 설명
|
|
730
|
+
description TEXT,
|
|
731
|
+
|
|
732
|
+
-- 생성 시각
|
|
733
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
734
|
+
|
|
735
|
+
-- 수정 시각
|
|
736
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
737
|
+
|
|
738
|
+
-- 확장 메타데이터
|
|
739
|
+
metadata_json JSON
|
|
740
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
741
|
+
|
|
742
|
+
FOREIGN KEY (table_schema_id)
|
|
743
|
+
REFERENCES artifact_standard_table_schemas (table_schema_id)
|
|
744
|
+
ON DELETE CASCADE,
|
|
745
|
+
|
|
746
|
+
UNIQUE (table_schema_id, column_code),
|
|
747
|
+
UNIQUE (table_schema_id, sort_order)
|
|
748
|
+
);
|
|
749
|
+
|
|
750
|
+
-- figure 작성/표현 policy를 관리한다.
|
|
751
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_figure_policies (
|
|
752
|
+
-- figure policy 식별자
|
|
753
|
+
figure_policy_id CHAR(36) PRIMARY KEY
|
|
754
|
+
CHECK (length(figure_policy_id) = 36),
|
|
755
|
+
|
|
756
|
+
-- 소속 산출물 표준 식별자
|
|
757
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
758
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
759
|
+
|
|
760
|
+
-- figure policy 코드
|
|
761
|
+
figure_policy_code VARCHAR(128) NOT NULL,
|
|
762
|
+
|
|
763
|
+
-- caption 필수 여부
|
|
764
|
+
caption_required INTEGER NOT NULL DEFAULT 1
|
|
765
|
+
CHECK (caption_required IN (0, 1)),
|
|
766
|
+
|
|
767
|
+
-- source path 필수 여부
|
|
768
|
+
source_path_required INTEGER NOT NULL DEFAULT 1
|
|
769
|
+
CHECK (source_path_required IN (0, 1)),
|
|
770
|
+
|
|
771
|
+
-- visible caption mode 코드
|
|
772
|
+
visible_caption_mode_code VARCHAR(64) NOT NULL DEFAULT 'DEDUPLICATE',
|
|
773
|
+
|
|
774
|
+
-- 설명
|
|
775
|
+
description TEXT,
|
|
776
|
+
|
|
777
|
+
-- 생성 시각
|
|
778
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
779
|
+
|
|
780
|
+
-- 수정 시각
|
|
781
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
782
|
+
|
|
783
|
+
-- 확장 메타데이터
|
|
784
|
+
metadata_json JSON
|
|
785
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
786
|
+
|
|
787
|
+
FOREIGN KEY (artifact_standard_id)
|
|
788
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
789
|
+
ON DELETE CASCADE,
|
|
790
|
+
|
|
791
|
+
UNIQUE (artifact_standard_id, figure_policy_code)
|
|
792
|
+
);
|
|
793
|
+
|
|
794
|
+
-- diagram 작성/표현 policy를 관리한다.
|
|
795
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_diagram_policies (
|
|
796
|
+
-- diagram policy 식별자
|
|
797
|
+
diagram_policy_id CHAR(36) PRIMARY KEY
|
|
798
|
+
CHECK (length(diagram_policy_id) = 36),
|
|
799
|
+
|
|
800
|
+
-- 소속 산출물 표준 식별자
|
|
801
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
802
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
803
|
+
|
|
804
|
+
-- diagram policy 코드
|
|
805
|
+
diagram_policy_code VARCHAR(128) NOT NULL,
|
|
806
|
+
|
|
807
|
+
-- notation 코드. 기본값은 ANY
|
|
808
|
+
notation_code VARCHAR(64) NOT NULL DEFAULT 'ANY',
|
|
809
|
+
|
|
810
|
+
-- source text 또는 path 필수 여부
|
|
811
|
+
source_required INTEGER NOT NULL DEFAULT 1
|
|
812
|
+
CHECK (source_required IN (0, 1)),
|
|
813
|
+
|
|
814
|
+
-- render output 필수 여부
|
|
815
|
+
render_output_required INTEGER NOT NULL DEFAULT 0
|
|
816
|
+
CHECK (render_output_required IN (0, 1)),
|
|
817
|
+
|
|
818
|
+
-- 설명
|
|
819
|
+
description TEXT,
|
|
820
|
+
|
|
821
|
+
-- 생성 시각
|
|
822
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
823
|
+
|
|
824
|
+
-- 수정 시각
|
|
825
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
826
|
+
|
|
827
|
+
-- 확장 메타데이터
|
|
828
|
+
metadata_json JSON
|
|
829
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
830
|
+
|
|
831
|
+
FOREIGN KEY (artifact_standard_id)
|
|
832
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
833
|
+
ON DELETE CASCADE,
|
|
834
|
+
|
|
835
|
+
UNIQUE (artifact_standard_id, diagram_policy_code)
|
|
836
|
+
);
|
|
837
|
+
|
|
838
|
+
-- 산출물 표준에 적용할 validation rule set을 관리한다.
|
|
839
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_validation_rule_sets (
|
|
840
|
+
-- validation rule set 식별자
|
|
841
|
+
validation_rule_set_id CHAR(36) PRIMARY KEY
|
|
842
|
+
CHECK (length(validation_rule_set_id) = 36),
|
|
843
|
+
|
|
844
|
+
-- 소속 산출물 표준 식별자
|
|
845
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
846
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
847
|
+
|
|
848
|
+
-- rule set 코드
|
|
849
|
+
rule_set_code VARCHAR(128) NOT NULL,
|
|
850
|
+
|
|
851
|
+
-- rule set 이름
|
|
852
|
+
rule_set_name VARCHAR(256) NOT NULL,
|
|
853
|
+
|
|
854
|
+
-- target domain
|
|
855
|
+
target_domain VARCHAR(128) NOT NULL DEFAULT 'artifact-standard',
|
|
856
|
+
|
|
857
|
+
-- 설명
|
|
858
|
+
description TEXT,
|
|
859
|
+
|
|
860
|
+
-- 생성 시각
|
|
861
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
862
|
+
|
|
863
|
+
-- 수정 시각
|
|
864
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
865
|
+
|
|
866
|
+
-- 확장 메타데이터
|
|
867
|
+
metadata_json JSON
|
|
868
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
869
|
+
|
|
870
|
+
FOREIGN KEY (artifact_standard_id)
|
|
871
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
872
|
+
ON DELETE CASCADE,
|
|
873
|
+
|
|
874
|
+
UNIQUE (artifact_standard_id, rule_set_code)
|
|
875
|
+
);
|
|
876
|
+
|
|
877
|
+
-- validation rule set에 포함된 contract-compatible rule을 관리한다.
|
|
878
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_validation_rule_set_rules (
|
|
879
|
+
-- validation rule set rule 식별자
|
|
880
|
+
validation_rule_set_rule_id CHAR(36) PRIMARY KEY
|
|
881
|
+
CHECK (length(validation_rule_set_rule_id) = 36),
|
|
882
|
+
|
|
883
|
+
-- 소속 validation rule set 식별자
|
|
884
|
+
validation_rule_set_id CHAR(36) NOT NULL
|
|
885
|
+
CHECK (length(validation_rule_set_id) = 36),
|
|
886
|
+
|
|
887
|
+
-- rule 식별자
|
|
888
|
+
rule_id VARCHAR(256) NOT NULL,
|
|
889
|
+
|
|
890
|
+
-- validation type 코드. agentic-contract-validation과 정렬한다.
|
|
891
|
+
validation_type_code VARCHAR(64) NOT NULL,
|
|
892
|
+
|
|
893
|
+
-- execution mode 코드. agentic-contract-validation과 정렬한다.
|
|
894
|
+
execution_mode_code VARCHAR(64) NOT NULL,
|
|
895
|
+
|
|
896
|
+
-- severity 코드. agentic-contract-validation과 정렬한다.
|
|
897
|
+
severity_code VARCHAR(64) NOT NULL,
|
|
898
|
+
|
|
899
|
+
-- 적용 대상 유형 코드
|
|
900
|
+
applies_to_type_code VARCHAR(128) NOT NULL,
|
|
901
|
+
|
|
902
|
+
-- 적용 대상 참조
|
|
903
|
+
applies_to_ref VARCHAR(256),
|
|
904
|
+
|
|
905
|
+
-- source component 참조
|
|
906
|
+
source_component_ref VARCHAR(256),
|
|
907
|
+
|
|
908
|
+
-- rule parameter
|
|
909
|
+
parameters_json JSON
|
|
910
|
+
CHECK (parameters_json IS NULL OR json_valid(parameters_json)),
|
|
911
|
+
|
|
912
|
+
-- 위반 메시지
|
|
913
|
+
message TEXT NOT NULL,
|
|
914
|
+
|
|
915
|
+
-- 해결 가이드
|
|
916
|
+
remediation TEXT,
|
|
917
|
+
|
|
918
|
+
-- 표시 정렬 순서
|
|
919
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
920
|
+
|
|
921
|
+
-- 활성 여부
|
|
922
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
923
|
+
CHECK (is_active IN (0, 1)),
|
|
924
|
+
|
|
925
|
+
-- 생성 시각
|
|
926
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
927
|
+
|
|
928
|
+
-- 수정 시각
|
|
929
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
930
|
+
|
|
931
|
+
-- 확장 메타데이터
|
|
932
|
+
metadata_json JSON
|
|
933
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
934
|
+
|
|
935
|
+
FOREIGN KEY (validation_rule_set_id)
|
|
936
|
+
REFERENCES artifact_standard_validation_rule_sets (validation_rule_set_id)
|
|
937
|
+
ON DELETE CASCADE,
|
|
938
|
+
|
|
939
|
+
UNIQUE (validation_rule_set_id, rule_id)
|
|
940
|
+
);
|
|
941
|
+
|
|
942
|
+
-- 산출물 표준 또는 산출물 표준 기반 자동 생성 출력 간 생성 관계를 관리한다.
|
|
943
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_generated_output_links (
|
|
944
|
+
-- generated output link 식별자
|
|
945
|
+
generated_output_link_id CHAR(36) PRIMARY KEY
|
|
946
|
+
CHECK (length(generated_output_link_id) = 36),
|
|
947
|
+
|
|
948
|
+
-- link 코드
|
|
949
|
+
link_code VARCHAR(128) NOT NULL,
|
|
950
|
+
|
|
951
|
+
-- source 산출물 표준 식별자
|
|
952
|
+
source_artifact_standard_id CHAR(36) NOT NULL
|
|
953
|
+
CHECK (length(source_artifact_standard_id) = 36),
|
|
954
|
+
|
|
955
|
+
-- source 산출물 표준 코드
|
|
956
|
+
source_artifact_standard_code VARCHAR(128) NOT NULL,
|
|
957
|
+
|
|
958
|
+
-- source 산출물 표준 버전
|
|
959
|
+
source_artifact_standard_version VARCHAR(64) NOT NULL,
|
|
960
|
+
|
|
961
|
+
-- target 유형 코드. 산출물 표준 또는 생성 출력물을 구분한다.
|
|
962
|
+
target_type_code VARCHAR(64) NOT NULL
|
|
963
|
+
CHECK (target_type_code IN ('ARTIFACT', 'GENERATED_OUTPUT')),
|
|
964
|
+
|
|
965
|
+
-- target 산출물 표준 식별자. target이 ARTIFACT인 경우 사용한다.
|
|
966
|
+
target_artifact_standard_id CHAR(36)
|
|
967
|
+
CHECK (target_artifact_standard_id IS NULL OR length(target_artifact_standard_id) = 36),
|
|
968
|
+
|
|
969
|
+
-- target 산출물 표준 코드
|
|
970
|
+
target_artifact_standard_code VARCHAR(128),
|
|
971
|
+
|
|
972
|
+
-- target 산출물 표준 버전
|
|
973
|
+
target_artifact_standard_version VARCHAR(64),
|
|
974
|
+
|
|
975
|
+
-- target 생성 출력명. target이 GENERATED_OUTPUT인 경우 사용한다.
|
|
976
|
+
target_output_name VARCHAR(256),
|
|
977
|
+
|
|
978
|
+
-- 생성 mode 코드
|
|
979
|
+
generation_mode_code VARCHAR(64) NOT NULL DEFAULT 'AUTOMATIC',
|
|
980
|
+
|
|
981
|
+
-- 표시 정렬 순서
|
|
982
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
983
|
+
|
|
984
|
+
-- 설명
|
|
985
|
+
description TEXT,
|
|
986
|
+
|
|
987
|
+
-- 활성 여부
|
|
988
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
989
|
+
CHECK (is_active IN (0, 1)),
|
|
990
|
+
|
|
991
|
+
-- 생성 시각
|
|
992
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
993
|
+
|
|
994
|
+
-- 수정 시각
|
|
995
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
996
|
+
|
|
997
|
+
-- 확장 메타데이터
|
|
998
|
+
metadata_json JSON
|
|
999
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
1000
|
+
|
|
1001
|
+
FOREIGN KEY (source_artifact_standard_id)
|
|
1002
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
1003
|
+
ON DELETE CASCADE,
|
|
1004
|
+
|
|
1005
|
+
FOREIGN KEY (target_artifact_standard_id)
|
|
1006
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
1007
|
+
ON DELETE SET NULL,
|
|
1008
|
+
|
|
1009
|
+
UNIQUE (link_code),
|
|
1010
|
+
|
|
1011
|
+
UNIQUE (
|
|
1012
|
+
source_artifact_standard_id,
|
|
1013
|
+
target_type_code,
|
|
1014
|
+
target_artifact_standard_code,
|
|
1015
|
+
target_artifact_standard_version,
|
|
1016
|
+
target_output_name
|
|
1017
|
+
)
|
|
1018
|
+
);
|
|
1019
|
+
|
|
1020
|
+
-- 설계 근거 및 후속 이행 후보 source mapping을 관리한다.
|
|
1021
|
+
CREATE TABLE IF NOT EXISTS artifact_standard_source_mappings (
|
|
1022
|
+
-- source mapping 식별자
|
|
1023
|
+
source_mapping_id CHAR(36) PRIMARY KEY
|
|
1024
|
+
CHECK (length(source_mapping_id) = 36),
|
|
1025
|
+
|
|
1026
|
+
-- 소속 산출물 표준 식별자
|
|
1027
|
+
artifact_standard_id CHAR(36) NOT NULL
|
|
1028
|
+
CHECK (length(artifact_standard_id) = 36),
|
|
1029
|
+
|
|
1030
|
+
-- source type 코드
|
|
1031
|
+
source_type_code VARCHAR(64) NOT NULL,
|
|
1032
|
+
|
|
1033
|
+
-- source URI 또는 경로
|
|
1034
|
+
source_uri VARCHAR(1024) NOT NULL,
|
|
1035
|
+
|
|
1036
|
+
-- source label
|
|
1037
|
+
source_label VARCHAR(256),
|
|
1038
|
+
|
|
1039
|
+
-- source section
|
|
1040
|
+
source_section VARCHAR(512),
|
|
1041
|
+
|
|
1042
|
+
-- source fragment
|
|
1043
|
+
source_fragment TEXT,
|
|
1044
|
+
|
|
1045
|
+
-- target type 코드
|
|
1046
|
+
target_type_code VARCHAR(128) NOT NULL,
|
|
1047
|
+
|
|
1048
|
+
-- target 참조
|
|
1049
|
+
target_ref VARCHAR(256) NOT NULL,
|
|
1050
|
+
|
|
1051
|
+
-- mapping type 코드
|
|
1052
|
+
mapping_type_code VARCHAR(64) NOT NULL,
|
|
1053
|
+
|
|
1054
|
+
-- mapping status 코드
|
|
1055
|
+
mapping_status_code VARCHAR(64) NOT NULL DEFAULT 'CANDIDATE',
|
|
1056
|
+
|
|
1057
|
+
-- 판단 근거
|
|
1058
|
+
rationale TEXT,
|
|
1059
|
+
|
|
1060
|
+
-- 손실/보완 사항
|
|
1061
|
+
loss_note TEXT,
|
|
1062
|
+
|
|
1063
|
+
-- 후속 조치 메모
|
|
1064
|
+
follow_up_note TEXT,
|
|
1065
|
+
|
|
1066
|
+
-- 생성 시각
|
|
1067
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
1068
|
+
|
|
1069
|
+
-- 수정 시각
|
|
1070
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
1071
|
+
|
|
1072
|
+
-- 확장 메타데이터
|
|
1073
|
+
metadata_json JSON
|
|
1074
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
1075
|
+
|
|
1076
|
+
FOREIGN KEY (artifact_standard_id)
|
|
1077
|
+
REFERENCES artifact_standard_standards (artifact_standard_id)
|
|
1078
|
+
ON DELETE CASCADE
|
|
1079
|
+
);
|
|
1080
|
+
|
|
1081
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_components_standard
|
|
1082
|
+
ON artifact_standard_components (artifact_standard_id);
|
|
1083
|
+
|
|
1084
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_component_bindings_standard
|
|
1085
|
+
ON artifact_standard_component_bindings (artifact_standard_id);
|
|
1086
|
+
|
|
1087
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_component_bindings_target
|
|
1088
|
+
ON artifact_standard_component_bindings (target_type_code, target_ref);
|
|
1089
|
+
|
|
1090
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_template_slots_blueprint
|
|
1091
|
+
ON artifact_standard_template_slots (blueprint_id);
|
|
1092
|
+
|
|
1093
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_blueprint_nodes_blueprint
|
|
1094
|
+
ON artifact_standard_blueprint_nodes (blueprint_id);
|
|
1095
|
+
|
|
1096
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_template_slots_node
|
|
1097
|
+
ON artifact_standard_template_slots (blueprint_node_id);
|
|
1098
|
+
|
|
1099
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_components_standard
|
|
1100
|
+
ON artifact_standard_document_components (artifact_standard_id);
|
|
1101
|
+
|
|
1102
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_components_parent
|
|
1103
|
+
ON artifact_standard_document_components (parent_document_component_id);
|
|
1104
|
+
|
|
1105
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_components_role_type
|
|
1106
|
+
ON artifact_standard_document_components (artifact_standard_id, component_role_code, component_type_code);
|
|
1107
|
+
|
|
1108
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_component_relations_standard
|
|
1109
|
+
ON artifact_standard_document_component_relations (artifact_standard_id);
|
|
1110
|
+
|
|
1111
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_component_relations_source
|
|
1112
|
+
ON artifact_standard_document_component_relations (source_document_component_id);
|
|
1113
|
+
|
|
1114
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_document_component_relations_target
|
|
1115
|
+
ON artifact_standard_document_component_relations (target_document_component_id);
|
|
1116
|
+
|
|
1117
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_physical_structure_policies_standard
|
|
1118
|
+
ON artifact_standard_physical_structure_policies (artifact_standard_id);
|
|
1119
|
+
|
|
1120
|
+
CREATE UNIQUE INDEX IF NOT EXISTS ux_artifact_standard_physical_structure_default
|
|
1121
|
+
ON artifact_standard_physical_structure_policies (artifact_standard_id)
|
|
1122
|
+
WHERE is_default = 1;
|
|
1123
|
+
|
|
1124
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_table_columns_schema
|
|
1125
|
+
ON artifact_standard_table_column_schemas (table_schema_id);
|
|
1126
|
+
|
|
1127
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_rule_set_rules_rule_set
|
|
1128
|
+
ON artifact_standard_validation_rule_set_rules (validation_rule_set_id);
|
|
1129
|
+
|
|
1130
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_generated_output_links_source
|
|
1131
|
+
ON artifact_standard_generated_output_links (source_artifact_standard_id);
|
|
1132
|
+
|
|
1133
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_generated_output_links_target_artifact
|
|
1134
|
+
ON artifact_standard_generated_output_links (target_artifact_standard_id);
|
|
1135
|
+
|
|
1136
|
+
CREATE INDEX IF NOT EXISTS idx_artifact_standard_source_mappings_standard
|
|
1137
|
+
ON artifact_standard_source_mappings (artifact_standard_id);
|
|
1138
|
+
|
|
1139
|
+
INSERT OR IGNORE INTO artifact_standard_schema_migrations (migration_id, migration_name)
|
|
1140
|
+
VALUES ('0001_artifact_standard_base', 'artifact-standard base schema');
|
|
1141
|
+
|
|
1142
|
+
INSERT OR IGNORE INTO artifact_standard_code_groups (code_group_code, code_group_name, description, sort_order)
|
|
1143
|
+
VALUES
|
|
1144
|
+
('standard_type_code', '산출물 표준 유형 코드', '산출물 표준의 유형을 정의한다.', 10),
|
|
1145
|
+
('standard_status_code', '산출물 표준 상태 코드', '산출물 표준의 lifecycle 상태를 정의한다.', 20),
|
|
1146
|
+
('component_type_code', 'Component 유형 코드', '산출물 표준 component 유형을 정의한다.', 30),
|
|
1147
|
+
('applicability_code', '적용 성격 코드', 'component 사용 성격을 정의한다.', 40),
|
|
1148
|
+
('component_binding_target_type_code', 'Component Binding Target 유형 코드', 'component binding 적용 대상 유형을 정의한다.', 50),
|
|
1149
|
+
('component_binding_role_code', 'Component Binding Role 코드', 'component binding 역할을 정의한다.', 60),
|
|
1150
|
+
('blueprint_node_type_code', 'Blueprint Node 유형 코드', 'blueprint node 유형을 정의한다.', 70),
|
|
1151
|
+
('slot_type_code', 'Template Slot 유형 코드', 'template slot 유형을 정의한다.', 80),
|
|
1152
|
+
('block_type_code', 'Block 유형 코드', 'slot 또는 schema 대상 block 유형을 정의한다.', 90),
|
|
1153
|
+
('value_type_code', '값 유형 코드', 'table column 값 유형을 정의한다.', 100),
|
|
1154
|
+
('notation_code', 'Diagram notation 코드', 'diagram notation 유형을 정의한다.', 110),
|
|
1155
|
+
('validation_target_type_code', 'Validation Target Type 코드', 'artifact-standard validation target type을 정의한다.', 120),
|
|
1156
|
+
('validation_type_code', 'Validation Type 코드', 'agentic-contract-validation과 정렬되는 validation type을 정의한다.', 130),
|
|
1157
|
+
('execution_mode_code', 'Execution Mode 코드', 'agentic-contract-validation과 정렬되는 execution mode를 정의한다.', 140),
|
|
1158
|
+
('severity_code', 'Severity 코드', 'agentic-contract-validation과 정렬되는 severity를 정의한다.', 150),
|
|
1159
|
+
('mapping_type_code', 'Source Mapping 유형 코드', 'source mapping 유형을 정의한다.', 160),
|
|
1160
|
+
('mapping_status_code', 'Source Mapping 상태 코드', 'source mapping 검토 상태를 정의한다.', 170),
|
|
1161
|
+
('document_component_role_code', 'Document Component 역할 코드', '산출물 문서 component 역할을 정의한다.', 180),
|
|
1162
|
+
('document_component_representation_code', 'Document Component 표현 방식 코드', 'document component의 표현 방식을 정의한다.', 190),
|
|
1163
|
+
('document_component_relation_type_code', 'Document Component 관계 유형 코드', 'document component 간 논리 관계를 정의한다.', 200),
|
|
1164
|
+
('physical_structure_strategy_code', 'Physical Structure 전략 코드', '논리 document component를 물리 구조로 배치하는 전략을 정의한다.', 210),
|
|
1165
|
+
('physical_relation_source_code', 'Physical Relation Source 코드', '물리 구조에서 관계를 해석하는 기준 원천을 정의한다.', 220),
|
|
1166
|
+
('generated_output_target_type_code', 'Generated Output Target 유형 코드', '자동 생성 관계의 target 유형을 정의한다.', 230),
|
|
1167
|
+
('generation_mode_code', 'Generation Mode 코드', '산출물 기반 생성 방식을 정의한다.', 240);
|
|
1168
|
+
|
|
1169
|
+
INSERT OR IGNORE INTO artifact_standard_codes (code_group_code, code, code_name, sort_order)
|
|
1170
|
+
VALUES
|
|
1171
|
+
('standard_type_code', 'DOCUMENT', '문서형 산출물 표준', 10),
|
|
1172
|
+
('standard_type_code', 'DATA', '데이터형 산출물 표준', 20),
|
|
1173
|
+
('standard_status_code', 'DRAFT', '초안', 10),
|
|
1174
|
+
('standard_status_code', 'ACTIVE', '활성', 20),
|
|
1175
|
+
('standard_status_code', 'DEPRECATED', '폐기 예정', 30),
|
|
1176
|
+
('standard_status_code', 'ARCHIVED', '보관', 40),
|
|
1177
|
+
('component_type_code', 'CONCEPT', '개념', 10),
|
|
1178
|
+
('component_type_code', 'FORMAT', '서식', 20),
|
|
1179
|
+
('component_type_code', 'GUIDE', '가이드 및 기법', 30),
|
|
1180
|
+
('component_type_code', 'EXAMPLE', '예시', 40),
|
|
1181
|
+
('component_type_code', 'LLM_SUPPLEMENT', 'LLM 보충 지침', 50),
|
|
1182
|
+
('applicability_code', 'COMMON_REFERENCE', '공통 참고', 10),
|
|
1183
|
+
('applicability_code', 'HUMAN_REFERENCE', '사람 참고', 20),
|
|
1184
|
+
('applicability_code', 'LLM_SUPPLEMENT', 'LLM 보충', 30),
|
|
1185
|
+
('component_binding_target_type_code', 'ARTIFACT_STANDARD', '산출물 표준', 10),
|
|
1186
|
+
('component_binding_target_type_code', 'DOCUMENT_BLUEPRINT', '문서 Blueprint', 20),
|
|
1187
|
+
('component_binding_target_type_code', 'BLUEPRINT_NODE', 'Blueprint Node', 30),
|
|
1188
|
+
('component_binding_target_type_code', 'TEMPLATE_SLOT', 'Template Slot', 40),
|
|
1189
|
+
('component_binding_target_type_code', 'TABLE_SCHEMA', 'Table Schema', 50),
|
|
1190
|
+
('component_binding_target_type_code', 'FIGURE_POLICY', 'Figure Policy', 60),
|
|
1191
|
+
('component_binding_target_type_code', 'DIAGRAM_POLICY', 'Diagram Policy', 70),
|
|
1192
|
+
('component_binding_target_type_code', 'VALIDATION_RULE_SET', 'Validation Rule Set', 80),
|
|
1193
|
+
('component_binding_target_type_code', 'DOCUMENT_COMPONENT', 'Document Component', 90),
|
|
1194
|
+
('component_binding_target_type_code', 'DOCUMENT_COMPONENT_RELATION', 'Document Component Relation', 100),
|
|
1195
|
+
('component_binding_target_type_code', 'PHYSICAL_STRUCTURE_POLICY', 'Physical Structure Policy', 110),
|
|
1196
|
+
('component_binding_role_code', 'PRIMARY_GUIDE', '주요 작성 가이드', 10),
|
|
1197
|
+
('component_binding_role_code', 'SUPPLEMENTARY_GUIDE', '보조 작성 가이드', 20),
|
|
1198
|
+
('component_binding_role_code', 'FORMAT_SOURCE', '서식 원천', 30),
|
|
1199
|
+
('component_binding_role_code', 'EXAMPLE_GOOD', '좋은 예시', 40),
|
|
1200
|
+
('component_binding_role_code', 'EXAMPLE_BAD', '나쁜 예시', 50),
|
|
1201
|
+
('component_binding_role_code', 'LLM_SUPPLEMENT', 'LLM 보충 지침', 60),
|
|
1202
|
+
('component_binding_role_code', 'VALIDATION_RATIONALE', '검증 근거', 70),
|
|
1203
|
+
('component_binding_role_code', 'REFERENCE', '참고 자료', 80),
|
|
1204
|
+
('blueprint_node_type_code', 'FRONT_MATTER', 'Front Matter', 10),
|
|
1205
|
+
('blueprint_node_type_code', 'BODY', '본문', 20),
|
|
1206
|
+
('blueprint_node_type_code', 'BACK_MATTER', 'Back Matter', 30),
|
|
1207
|
+
('blueprint_node_type_code', 'APPENDIX', '부록', 40),
|
|
1208
|
+
('slot_type_code', 'PARAGRAPH', '문단', 10),
|
|
1209
|
+
('slot_type_code', 'TABLE', '표', 20),
|
|
1210
|
+
('slot_type_code', 'FIGURE', '그림', 30),
|
|
1211
|
+
('slot_type_code', 'DIAGRAM', '도해', 40),
|
|
1212
|
+
('slot_type_code', 'CHECKLIST', '체크리스트', 50),
|
|
1213
|
+
('block_type_code', 'PARAGRAPH', '문단', 10),
|
|
1214
|
+
('block_type_code', 'TABLE', '표', 20),
|
|
1215
|
+
('block_type_code', 'FIGURE', '그림', 30),
|
|
1216
|
+
('block_type_code', 'DIAGRAM', '도해', 40),
|
|
1217
|
+
('value_type_code', 'TEXT', '문자열', 10),
|
|
1218
|
+
('value_type_code', 'LONG_TEXT', '긴 문자열', 20),
|
|
1219
|
+
('value_type_code', 'INTEGER', '정수', 30),
|
|
1220
|
+
('value_type_code', 'DECIMAL', '소수', 40),
|
|
1221
|
+
('value_type_code', 'BOOLEAN', '불리언', 50),
|
|
1222
|
+
('value_type_code', 'DATE', '날짜', 60),
|
|
1223
|
+
('value_type_code', 'DATETIME', '일시', 70),
|
|
1224
|
+
('value_type_code', 'CODE', '코드', 80),
|
|
1225
|
+
('value_type_code', 'IDENTIFIER', '식별자', 90),
|
|
1226
|
+
('value_type_code', 'LINK', '링크', 100),
|
|
1227
|
+
('value_type_code', 'MARKDOWN', 'Markdown', 110),
|
|
1228
|
+
('value_type_code', 'JSON', 'JSON', 120),
|
|
1229
|
+
('notation_code', 'MERMAID', 'Mermaid', 10),
|
|
1230
|
+
('notation_code', 'PLANTUML', 'PlantUML', 20),
|
|
1231
|
+
('notation_code', 'DRAWIO', 'draw.io', 30),
|
|
1232
|
+
('notation_code', 'SVG', 'SVG', 40),
|
|
1233
|
+
('validation_target_type_code', 'ARTIFACT_STANDARD', '산출물 표준', 10),
|
|
1234
|
+
('validation_target_type_code', 'DOCUMENT_BLUEPRINT', 'Document Blueprint', 20),
|
|
1235
|
+
('validation_target_type_code', 'BLUEPRINT_NODE', 'Blueprint Node', 30),
|
|
1236
|
+
('validation_target_type_code', 'TEMPLATE_SLOT', 'Template Slot', 40),
|
|
1237
|
+
('validation_target_type_code', 'TABLE_SCHEMA', 'Table Schema', 50),
|
|
1238
|
+
('validation_target_type_code', 'TABLE_COLUMN_SCHEMA', 'Table Column Schema', 60),
|
|
1239
|
+
('validation_target_type_code', 'FIGURE_POLICY', 'Figure Policy', 70),
|
|
1240
|
+
('validation_target_type_code', 'DIAGRAM_POLICY', 'Diagram Policy', 80),
|
|
1241
|
+
('validation_target_type_code', 'COMPONENT', 'Component', 90),
|
|
1242
|
+
('validation_target_type_code', 'COMPONENT_BINDING', 'Component Binding', 100),
|
|
1243
|
+
('validation_target_type_code', 'VALIDATION_RULE_SET', 'Validation Rule Set', 110),
|
|
1244
|
+
('validation_target_type_code', 'DOCUMENT_COMPONENT', 'Document Component', 120),
|
|
1245
|
+
('validation_target_type_code', 'DOCUMENT_COMPONENT_RELATION', 'Document Component Relation', 130),
|
|
1246
|
+
('validation_target_type_code', 'PHYSICAL_STRUCTURE_POLICY', 'Physical Structure Policy', 140),
|
|
1247
|
+
('validation_type_code', 'STRUCTURE', '구조 검증', 10),
|
|
1248
|
+
('validation_type_code', 'SCHEMA', 'Schema 검증', 20),
|
|
1249
|
+
('validation_type_code', 'REFERENCE_INTEGRITY', '참조 무결성 검증', 30),
|
|
1250
|
+
('validation_type_code', 'POLICY', '정책 검증', 40),
|
|
1251
|
+
('validation_type_code', 'CONTENT_RULE', '내용 규칙 검증', 50),
|
|
1252
|
+
('validation_type_code', 'QUALITY_CHECKLIST', '품질 체크리스트', 60),
|
|
1253
|
+
('validation_type_code', 'RUBRIC', 'Rubric 평가', 70),
|
|
1254
|
+
('validation_type_code', 'EXAMPLE_BASED_REVIEW', '예시 기반 검토', 80),
|
|
1255
|
+
('execution_mode_code', 'AUTOMATED', '자동 실행', 10),
|
|
1256
|
+
('execution_mode_code', 'HUMAN_REVIEW', '사람 검토', 20),
|
|
1257
|
+
('execution_mode_code', 'LLM_EVALUATION', 'LLM 평가', 30),
|
|
1258
|
+
('execution_mode_code', 'HYBRID', '혼합 실행', 40),
|
|
1259
|
+
('severity_code', 'ERROR', '오류', 10),
|
|
1260
|
+
('severity_code', 'WARNING', '경고', 20),
|
|
1261
|
+
('severity_code', 'INFO', '정보', 30),
|
|
1262
|
+
('mapping_type_code', 'DIRECT_COPY', '직접 반영', 10),
|
|
1263
|
+
('mapping_type_code', 'NORMALIZED', '정규화 반영', 20),
|
|
1264
|
+
('mapping_type_code', 'DERIVED_RULE', 'Rule 도출', 30),
|
|
1265
|
+
('mapping_type_code', 'DERIVED_SCHEMA', 'Schema 도출', 40),
|
|
1266
|
+
('mapping_type_code', 'DERIVED_POLICY', 'Policy 도출', 50),
|
|
1267
|
+
('mapping_type_code', 'REFERENCE_ONLY', '참고', 60),
|
|
1268
|
+
('mapping_type_code', 'EXCLUDED', '제외', 70),
|
|
1269
|
+
('mapping_status_code', 'CANDIDATE', '후보', 10),
|
|
1270
|
+
('mapping_status_code', 'APPROVED', '승인', 20),
|
|
1271
|
+
('mapping_status_code', 'DEFERRED', '보류', 30),
|
|
1272
|
+
('mapping_status_code', 'EXCLUDED', '제외', 40),
|
|
1273
|
+
('mapping_status_code', 'SUPERSEDED', '대체', 50),
|
|
1274
|
+
('document_component_role_code', 'MAIN', '본문', 10),
|
|
1275
|
+
('document_component_role_code', 'APPENDIX', '부록', 20),
|
|
1276
|
+
('document_component_role_code', 'SUPPORTING', '보조자료', 30),
|
|
1277
|
+
('document_component_role_code', 'CONTROL', '통제정보', 40),
|
|
1278
|
+
('document_component_representation_code', 'INTERNAL_NODE', '문서 내부 Node', 10),
|
|
1279
|
+
('document_component_representation_code', 'SEPARATE_DOCUMENT', '별도 Document', 20),
|
|
1280
|
+
('document_component_relation_type_code', 'CONTAINS', '포함', 10),
|
|
1281
|
+
('document_component_relation_type_code', 'DETAILS', '상세화', 20),
|
|
1282
|
+
('document_component_relation_type_code', 'SUPPORTS', '지원', 30),
|
|
1283
|
+
('document_component_relation_type_code', 'REFERENCES', '참조', 40),
|
|
1284
|
+
('physical_structure_strategy_code', 'HIERARCHICAL', '계층형 폴더', 10),
|
|
1285
|
+
('physical_structure_strategy_code', 'GROUPED_BY_LEVEL', 'Level별 그룹', 20),
|
|
1286
|
+
('physical_structure_strategy_code', 'GROUPED_BY_PARENT', '상위 component별 그룹', 30),
|
|
1287
|
+
('physical_structure_strategy_code', 'FLAT_WITH_MANIFEST', 'Manifest 기반 단일 폴더', 40),
|
|
1288
|
+
('physical_relation_source_code', 'DB', 'DB 관계 기준', 10),
|
|
1289
|
+
('physical_relation_source_code', 'MANIFEST', 'Manifest 기준', 20),
|
|
1290
|
+
('physical_relation_source_code', 'FILE_PATH', 'File path 기준', 30),
|
|
1291
|
+
('generated_output_target_type_code', 'ARTIFACT', '산출물 표준', 10),
|
|
1292
|
+
('generated_output_target_type_code', 'GENERATED_OUTPUT', '생성 출력물', 20),
|
|
1293
|
+
('generation_mode_code', 'AUTOMATIC', '자동 생성', 10),
|
|
1294
|
+
('generation_mode_code', 'ASSISTED', '보조 생성', 20),
|
|
1295
|
+
('generation_mode_code', 'MANUAL', '수동 생성', 30);
|