@soddong/agentic-domain-methodology 0.11.1
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 +64 -0
- package/CHANGELOG.md +97 -0
- package/README.md +501 -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 +13 -0
- package/dist/fixtures.d.ts.map +1 -0
- package/dist/fixtures.js +413 -0
- package/dist/fixtures.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/repositories.d.ts +54 -0
- package/dist/repositories.d.ts.map +1 -0
- package/dist/repositories.js +652 -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 +728 -0
- package/dist/seed-apply.js.map +1 -0
- package/dist/service.d.ts +107 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +225 -0
- package/dist/service.js.map +1 -0
- package/dist/types.d.ts +356 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/validators.d.ts +17 -0
- package/dist/validators.d.ts.map +1 -0
- package/dist/validators.js +297 -0
- package/dist/validators.js.map +1 -0
- package/docs/build.md +47 -0
- package/docs/configuration.md +33 -0
- package/docs/delivery.md +52 -0
- package/docs/operations.md +55 -0
- package/docs/publishing.md +84 -0
- package/docs/schema/generated/README.md +39 -0
- package/docs/schema/generated/methodology_activities.md +121 -0
- package/docs/schema/generated/methodology_activities.svg +143 -0
- package/docs/schema/generated/methodology_activity_artifact_requirements.md +129 -0
- package/docs/schema/generated/methodology_activity_artifact_requirements.svg +52 -0
- package/docs/schema/generated/methodology_activity_criteria.md +112 -0
- package/docs/schema/generated/methodology_activity_criteria.svg +52 -0
- package/docs/schema/generated/methodology_baseline_requirements.md +103 -0
- package/docs/schema/generated/methodology_baseline_requirements.svg +27 -0
- package/docs/schema/generated/methodology_code_groups.md +70 -0
- package/docs/schema/generated/methodology_code_groups.svg +49 -0
- package/docs/schema/generated/methodology_codes.md +88 -0
- package/docs/schema/generated/methodology_codes.svg +49 -0
- package/docs/schema/generated/methodology_common_blueprint_policies.md +104 -0
- package/docs/schema/generated/methodology_common_blueprint_policies.svg +72 -0
- package/docs/schema/generated/methodology_common_blueprint_policy_nodes.md +118 -0
- package/docs/schema/generated/methodology_common_blueprint_policy_nodes.svg +59 -0
- package/docs/schema/generated/methodology_handoff_requirements.md +130 -0
- package/docs/schema/generated/methodology_handoff_requirements.svg +27 -0
- package/docs/schema/generated/methodology_lifecycles.md +105 -0
- package/docs/schema/generated/methodology_lifecycles.svg +71 -0
- package/docs/schema/generated/methodology_methodologies.md +92 -0
- package/docs/schema/generated/methodology_methodologies.svg +92 -0
- package/docs/schema/generated/methodology_phase_processes.md +106 -0
- package/docs/schema/generated/methodology_phase_processes.svg +77 -0
- package/docs/schema/generated/methodology_phases.md +107 -0
- package/docs/schema/generated/methodology_phases.svg +77 -0
- package/docs/schema/generated/methodology_processes.md +98 -0
- package/docs/schema/generated/methodology_processes.svg +118 -0
- package/docs/schema/generated/methodology_schema_migrations.md +52 -0
- package/docs/schema/generated/methodology_schema_migrations.svg +27 -0
- package/docs/schema/generated/methodology_stage_activities.md +106 -0
- package/docs/schema/generated/methodology_stage_activities.svg +77 -0
- package/docs/schema/generated/methodology_stage_artifact_requirements.md +109 -0
- package/docs/schema/generated/methodology_stage_artifact_requirements.svg +52 -0
- package/docs/schema/generated/methodology_stage_criteria.md +112 -0
- package/docs/schema/generated/methodology_stage_criteria.svg +52 -0
- package/docs/schema/generated/methodology_stages.md +117 -0
- package/docs/schema/generated/methodology_stages.svg +121 -0
- package/docs/schema/generated/methodology_steps.md +105 -0
- package/docs/schema/generated/methodology_steps.svg +52 -0
- package/docs/schema/generated/methodology_trace_policies.md +121 -0
- package/docs/schema/generated/methodology_trace_policies.svg +27 -0
- package/docs/schema/generated/schema.json +4253 -0
- package/docs/schema/generated/schema.mmd +296 -0
- package/docs/schema/generated/schema.svg +446 -0
- package/docs/schema/migrations.md +24 -0
- package/docs/usage.md +39 -0
- package/package.json +29 -0
- package/src/database/migrations/0001_methodology_base.sql +1190 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_activity_criteria Pages: 1 -->
|
|
7
|
+
<svg width="402pt" height="438pt"
|
|
8
|
+
viewBox="0.00 0.00 401.59 438.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 434)">
|
|
10
|
+
<title>methodology_activity_criteria</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-434 397.59,-434 397.59,4 -4,4"/>
|
|
12
|
+
<!-- methodology_activity_criteria -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_activity_criteria</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="46.2,-337.8 46.2,-383.8 347.39,-383.8 347.39,-337.8 46.2,-337.8"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="46.2,-337.8 46.2,-383.8 347.39,-383.8 347.39,-337.8 46.2,-337.8"/>
|
|
17
|
+
<text text-anchor="start" x="53.2" y="-361.6" font-family="Arial Bold" font-size="18.00">methodology_activity_criteria</text>
|
|
18
|
+
<text text-anchor="start" x="271.13" y="-361.6" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="302.25" y="-361.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="73.48" y="-347.2" font-family="Arial" font-size="14.00" fill="#333333">activity의 completion 판단 기준을 관리한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="46.2,-307 46.2,-337.8 347.39,-337.8 347.39,-307 46.2,-307"/>
|
|
22
|
+
<text text-anchor="start" x="53.2" y="-319.2" font-family="Arial" font-size="14.00">activity_criteria_id </text>
|
|
23
|
+
<text text-anchor="start" x="168.35" y="-319.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" points="46.2,-276.2 46.2,-307 347.39,-307 347.39,-276.2 46.2,-276.2"/>
|
|
25
|
+
<text text-anchor="start" x="53.2" y="-288.4" font-family="Arial" font-size="14.00">activity_id </text>
|
|
26
|
+
<text text-anchor="start" x="118.56" y="-288.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
27
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="44.7,-274.7 44.7,-385.3 348.89,-385.3 348.89,-274.7 44.7,-274.7"/>
|
|
28
|
+
</g>
|
|
29
|
+
<!-- methodology_activities -->
|
|
30
|
+
<g id="node2" class="node">
|
|
31
|
+
<title>methodology_activities</title>
|
|
32
|
+
<polygon fill="#efefef" stroke="none" points="70.68,-104.8 70.68,-150.8 322.91,-150.8 322.91,-104.8 70.68,-104.8"/>
|
|
33
|
+
<polygon fill="none" stroke="black" points="70.68,-104.8 70.68,-150.8 322.91,-150.8 322.91,-104.8 70.68,-104.8"/>
|
|
34
|
+
<text text-anchor="start" x="77.68" y="-128.6" font-family="Arial Bold" font-size="18.00">methodology_activities</text>
|
|
35
|
+
<text text-anchor="start" x="246.65" y="-128.6" font-family="Arial" font-size="14.00"> </text>
|
|
36
|
+
<text text-anchor="start" x="277.77" y="-128.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
37
|
+
<text text-anchor="start" x="78.93" y="-114.2" font-family="Arial" font-size="14.00" fill="#333333">process 내부의 기본 수행 활동을 관리한다.</text>
|
|
38
|
+
<polygon fill="none" stroke="black" points="70.68,-74 70.68,-104.8 322.91,-104.8 322.91,-74 70.68,-74"/>
|
|
39
|
+
<text text-anchor="start" x="77.68" y="-86.2" font-family="Arial" font-size="14.00">activity_id </text>
|
|
40
|
+
<text text-anchor="start" x="143.04" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
41
|
+
<polygon fill="none" stroke="black" points="70.68,-43.2 70.68,-74 322.91,-74 322.91,-43.2 70.68,-43.2"/>
|
|
42
|
+
<text text-anchor="start" x="77.68" y="-55.4" font-family="Arial" font-size="14.00">process_id </text>
|
|
43
|
+
<text text-anchor="start" x="149.27" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
44
|
+
</g>
|
|
45
|
+
<!-- methodology_activity_criteria->methodology_activities -->
|
|
46
|
+
<g id="edge1" class="edge">
|
|
47
|
+
<title>methodology_activity_criteria:activity_id->methodology_activities:activity_id</title>
|
|
48
|
+
<path fill="none" stroke="black" d="M197.67,-264.9C207.23,-213.17 292.53,-249.06 322.91,-194 345.36,-153.29 370.4,-89.4 323.91,-89.4"/>
|
|
49
|
+
<polygon fill="black" stroke="black" points="197.67,-264.9 192.34,-274.49 197.22,-270.22 196.85,-274.53 196.85,-274.53 196.85,-274.53 197.22,-270.22 201.31,-275.25 197.67,-264.9"/>
|
|
50
|
+
</g>
|
|
51
|
+
</g>
|
|
52
|
+
</svg>
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# methodology_baseline_requirements
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
baseline이 필요한 scope와 trigger를 관리한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_baseline_requirements (
|
|
12
|
+
-- baseline requirement 식별자
|
|
13
|
+
baseline_requirement_id CHAR(36) PRIMARY KEY
|
|
14
|
+
CHECK (length(baseline_requirement_id) = 36),
|
|
15
|
+
|
|
16
|
+
-- baseline scope 코드
|
|
17
|
+
baseline_scope_code VARCHAR(32) NOT NULL
|
|
18
|
+
CHECK (baseline_scope_code IN ('phase', 'process', 'stage', 'activity')),
|
|
19
|
+
|
|
20
|
+
-- baseline scope 참조 식별자
|
|
21
|
+
baseline_scope_ref_id CHAR(36) NOT NULL
|
|
22
|
+
CHECK (length(baseline_scope_ref_id) = 36),
|
|
23
|
+
|
|
24
|
+
-- baseline trigger 코드
|
|
25
|
+
baseline_trigger_code VARCHAR(32) NOT NULL
|
|
26
|
+
CHECK (baseline_trigger_code IN ('entry', 'exit', 'gate', 'handoff', 'approval', 'manual')),
|
|
27
|
+
|
|
28
|
+
-- baseline 이름
|
|
29
|
+
baseline_name VARCHAR(256) NOT NULL,
|
|
30
|
+
|
|
31
|
+
-- baseline 설명
|
|
32
|
+
baseline_description TEXT,
|
|
33
|
+
|
|
34
|
+
-- 필수 여부
|
|
35
|
+
is_required INTEGER NOT NULL DEFAULT 1
|
|
36
|
+
CHECK (is_required IN (0, 1)),
|
|
37
|
+
|
|
38
|
+
-- validation 필수 여부
|
|
39
|
+
validation_required INTEGER NOT NULL DEFAULT 0
|
|
40
|
+
CHECK (validation_required IN (0, 1)),
|
|
41
|
+
|
|
42
|
+
-- 정렬 순서
|
|
43
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
44
|
+
|
|
45
|
+
-- 생성 시각
|
|
46
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
47
|
+
|
|
48
|
+
-- 수정 시각
|
|
49
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
50
|
+
|
|
51
|
+
-- 확장 메타데이터
|
|
52
|
+
metadata_json JSON
|
|
53
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json))
|
|
54
|
+
)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
</details>
|
|
58
|
+
|
|
59
|
+
## Columns
|
|
60
|
+
|
|
61
|
+
| Name | Type | Default | Nullable |
|
|
62
|
+
| ----------------------- | ------------ | ----------------- | -------- |
|
|
63
|
+
| baseline_requirement_id | CHAR(36) | | true |
|
|
64
|
+
| baseline_scope_code | VARCHAR(32) | | false |
|
|
65
|
+
| baseline_scope_ref_id | CHAR(36) | | false |
|
|
66
|
+
| baseline_trigger_code | VARCHAR(32) | | false |
|
|
67
|
+
| baseline_name | VARCHAR(256) | | false |
|
|
68
|
+
| baseline_description | TEXT | | true |
|
|
69
|
+
| is_required | INTEGER | 1 | false |
|
|
70
|
+
| validation_required | INTEGER | 0 | false |
|
|
71
|
+
| sort_order | INTEGER | 0 | false |
|
|
72
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false |
|
|
73
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false |
|
|
74
|
+
| metadata_json | JSON | | true |
|
|
75
|
+
|
|
76
|
+
## Constraints
|
|
77
|
+
|
|
78
|
+
| Name | Type | Definition |
|
|
79
|
+
| ---------------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------- |
|
|
80
|
+
| baseline_requirement_id | PRIMARY KEY | PRIMARY KEY (baseline_requirement_id) |
|
|
81
|
+
| sqlite_autoindex_methodology_baseline_requirements_1 | PRIMARY KEY | PRIMARY KEY (baseline_requirement_id) |
|
|
82
|
+
| - | CHECK | CHECK (length(baseline_requirement_id) = 36) |
|
|
83
|
+
| - | CHECK | CHECK (baseline_scope_code IN ('phase', 'process', 'stage', 'activity')) |
|
|
84
|
+
| - | CHECK | CHECK (length(baseline_scope_ref_id) = 36) |
|
|
85
|
+
| - | CHECK | CHECK (baseline_trigger_code IN ('entry', 'exit', 'gate', 'handoff', 'approval', 'manual')) |
|
|
86
|
+
| - | CHECK | CHECK (is_required IN (0, 1)) |
|
|
87
|
+
| - | CHECK | CHECK (validation_required IN (0, 1)) |
|
|
88
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
89
|
+
|
|
90
|
+
## Indexes
|
|
91
|
+
|
|
92
|
+
| Name | Definition |
|
|
93
|
+
| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
94
|
+
| idx_methodology_baseline_requirements_scope | CREATE INDEX idx_methodology_baseline_requirements_scope<br /> ON methodology_baseline_requirements (baseline_scope_code, baseline_scope_ref_id) |
|
|
95
|
+
| sqlite_autoindex_methodology_baseline_requirements_1 | PRIMARY KEY (baseline_requirement_id) |
|
|
96
|
+
|
|
97
|
+
## Relations
|
|
98
|
+
|
|
99
|
+

|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_baseline_requirements Pages: 1 -->
|
|
7
|
+
<svg width="450pt" height="177pt"
|
|
8
|
+
viewBox="0.00 0.00 449.59 177.20" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 173.2)">
|
|
10
|
+
<title>methodology_baseline_requirements</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-173.2 445.59,-173.2 445.59,4 -4,4"/>
|
|
12
|
+
<!-- methodology_baseline_requirements -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_baseline_requirements</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="46.2,-77 46.2,-123 395.39,-123 395.39,-77 46.2,-77"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="46.2,-77 46.2,-123 395.39,-123 395.39,-77 46.2,-77"/>
|
|
17
|
+
<text text-anchor="start" x="53.2" y="-100.8" font-family="Arial Bold" font-size="18.00">methodology_baseline_requirements</text>
|
|
18
|
+
<text text-anchor="start" x="319.13" y="-100.8" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="350.25" y="-100.8" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="88.13" y="-86.4" font-family="Arial" font-size="14.00" fill="#333333">baseline이 필요한 scope와 trigger를 관리한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="46.2,-46.2 46.2,-77 395.39,-77 395.39,-46.2 46.2,-46.2"/>
|
|
22
|
+
<text text-anchor="start" x="53.2" y="-58.4" font-family="Arial" font-size="14.00">baseline_requirement_id </text>
|
|
23
|
+
<text text-anchor="start" x="210.41" y="-58.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="44.7,-44.7 44.7,-124.5 396.89,-124.5 396.89,-44.7 44.7,-44.7"/>
|
|
25
|
+
</g>
|
|
26
|
+
</g>
|
|
27
|
+
</svg>
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# methodology_code_groups
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
코드 그룹을 정의한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_code_groups (
|
|
12
|
+
-- 코드 그룹 식별자
|
|
13
|
+
code_group_code VARCHAR(64) PRIMARY KEY,
|
|
14
|
+
|
|
15
|
+
-- 코드 그룹 한글명
|
|
16
|
+
code_group_name VARCHAR(128) NOT NULL,
|
|
17
|
+
|
|
18
|
+
-- 코드 그룹 설명
|
|
19
|
+
description TEXT,
|
|
20
|
+
|
|
21
|
+
-- 표시 정렬 순서
|
|
22
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
23
|
+
|
|
24
|
+
-- 활성 여부. 1은 활성, 0은 비활성
|
|
25
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
26
|
+
CHECK (is_active IN (0, 1)),
|
|
27
|
+
|
|
28
|
+
-- 생성 시각
|
|
29
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
30
|
+
|
|
31
|
+
-- 수정 시각
|
|
32
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
33
|
+
)
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
</details>
|
|
37
|
+
|
|
38
|
+
## Columns
|
|
39
|
+
|
|
40
|
+
| Name | Type | Default | Nullable | Children |
|
|
41
|
+
| --------------- | ------------ | ----------------- | -------- | ----------------------------------------- |
|
|
42
|
+
| code_group_code | VARCHAR(64) | | true | [methodology_codes](methodology_codes.md) |
|
|
43
|
+
| code_group_name | VARCHAR(128) | | false | |
|
|
44
|
+
| description | TEXT | | true | |
|
|
45
|
+
| sort_order | INTEGER | 0 | false | |
|
|
46
|
+
| is_active | INTEGER | 1 | false | |
|
|
47
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
48
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
49
|
+
|
|
50
|
+
## Constraints
|
|
51
|
+
|
|
52
|
+
| Name | Type | Definition |
|
|
53
|
+
| ------------------------------------------ | ----------- | ----------------------------- |
|
|
54
|
+
| code_group_code | PRIMARY KEY | PRIMARY KEY (code_group_code) |
|
|
55
|
+
| sqlite_autoindex_methodology_code_groups_1 | PRIMARY KEY | PRIMARY KEY (code_group_code) |
|
|
56
|
+
| - | CHECK | CHECK (is_active IN (0, 1)) |
|
|
57
|
+
|
|
58
|
+
## Indexes
|
|
59
|
+
|
|
60
|
+
| Name | Definition |
|
|
61
|
+
| ------------------------------------------ | ----------------------------- |
|
|
62
|
+
| sqlite_autoindex_methodology_code_groups_1 | PRIMARY KEY (code_group_code) |
|
|
63
|
+
|
|
64
|
+
## Relations
|
|
65
|
+
|
|
66
|
+

|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_code_groups Pages: 1 -->
|
|
7
|
+
<svg width="394pt" height="415pt"
|
|
8
|
+
viewBox="0.00 0.00 394.08 415.24" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 411.24)">
|
|
10
|
+
<title>methodology_code_groups</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-411.24 390.08,-411.24 390.08,4 -4,4"/>
|
|
12
|
+
<!-- methodology_code_groups -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_code_groups</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="46.2,-85.04 46.2,-131.04 325.42,-131.04 325.42,-85.04 46.2,-85.04"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="46.2,-85.04 46.2,-131.04 325.42,-131.04 325.42,-85.04 46.2,-85.04"/>
|
|
17
|
+
<text text-anchor="start" x="53.2" y="-108.84" font-family="Arial Bold" font-size="18.00">methodology_code_groups</text>
|
|
18
|
+
<text text-anchor="start" x="249.17" y="-108.84" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="280.29" y="-108.84" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="127.47" y="-94.44" font-family="Arial" font-size="14.00" fill="#333333">코드 그룹을 정의한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="46.2,-54.24 46.2,-85.04 325.42,-85.04 325.42,-54.24 46.2,-54.24"/>
|
|
22
|
+
<text text-anchor="start" x="53.2" y="-66.44" font-family="Arial" font-size="14.00">code_group_code </text>
|
|
23
|
+
<text text-anchor="start" x="169.19" y="-66.44" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(64)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="44.7,-52.74 44.7,-132.54 326.92,-132.54 326.92,-52.74 44.7,-52.74"/>
|
|
25
|
+
</g>
|
|
26
|
+
<!-- methodology_codes -->
|
|
27
|
+
<g id="node2" class="node">
|
|
28
|
+
<title>methodology_codes</title>
|
|
29
|
+
<polygon fill="#efefef" stroke="none" points="70.25,-318.04 70.25,-364.04 301.37,-364.04 301.37,-318.04 70.25,-318.04"/>
|
|
30
|
+
<polygon fill="none" stroke="black" points="70.25,-318.04 70.25,-364.04 301.37,-364.04 301.37,-318.04 70.25,-318.04"/>
|
|
31
|
+
<text text-anchor="start" x="78.7" y="-341.84" font-family="Arial Bold" font-size="18.00">methodology_codes</text>
|
|
32
|
+
<text text-anchor="start" x="223.67" y="-341.84" font-family="Arial" font-size="14.00"> </text>
|
|
33
|
+
<text text-anchor="start" x="254.79" y="-341.84" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
34
|
+
<text text-anchor="start" x="100.24" y="-327.44" font-family="Arial" font-size="14.00" fill="#333333">코드 그룹별 코드 값을 정의한다.</text>
|
|
35
|
+
<polygon fill="none" stroke="black" points="70.25,-287.24 70.25,-318.04 301.37,-318.04 301.37,-287.24 70.25,-287.24"/>
|
|
36
|
+
<text text-anchor="start" x="77.25" y="-299.44" font-family="Arial" font-size="14.00">code_group_code </text>
|
|
37
|
+
<text text-anchor="start" x="193.24" y="-299.44" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(64)]</text>
|
|
38
|
+
<polygon fill="none" stroke="black" points="70.25,-256.44 70.25,-287.24 301.37,-287.24 301.37,-256.44 70.25,-256.44"/>
|
|
39
|
+
<text text-anchor="start" x="77.25" y="-268.64" font-family="Arial" font-size="14.00">code </text>
|
|
40
|
+
<text text-anchor="start" x="111.5" y="-268.64" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(128)]</text>
|
|
41
|
+
</g>
|
|
42
|
+
<!-- methodology_codes->methodology_code_groups -->
|
|
43
|
+
<g id="edge1" class="edge">
|
|
44
|
+
<title>methodology_codes:code_group_code->methodology_code_groups:code_group_code</title>
|
|
45
|
+
<path fill="none" stroke="black" d="M312.37,-300.58C365.49,-278.87 409.67,-92.49 371.62,-54.24 313.39,4.31 185.81,29.34 185.81,-53.24"/>
|
|
46
|
+
<polygon fill="black" stroke="black" points="312.49,-300.55 301.79,-298.17 307.27,-301.63 303.03,-302.5 303.03,-302.5 303.03,-302.5 307.27,-301.63 303.61,-306.98 312.49,-300.55"/>
|
|
47
|
+
</g>
|
|
48
|
+
</g>
|
|
49
|
+
</svg>
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# methodology_codes
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
코드 그룹별 코드 값을 정의한다.
|
|
6
|
+
|
|
7
|
+
<details>
|
|
8
|
+
<summary><strong>Table Definition</strong></summary>
|
|
9
|
+
|
|
10
|
+
```sql
|
|
11
|
+
CREATE TABLE methodology_codes (
|
|
12
|
+
-- 코드 그룹 식별자
|
|
13
|
+
code_group_code VARCHAR(64) NOT NULL,
|
|
14
|
+
|
|
15
|
+
-- 코드 값. lower_snake_case를 사용한다.
|
|
16
|
+
code VARCHAR(128) NOT NULL,
|
|
17
|
+
|
|
18
|
+
-- 코드 한글명
|
|
19
|
+
code_name VARCHAR(128) NOT NULL,
|
|
20
|
+
|
|
21
|
+
-- 코드 설명
|
|
22
|
+
description TEXT,
|
|
23
|
+
|
|
24
|
+
-- 표시 정렬 순서
|
|
25
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
26
|
+
|
|
27
|
+
-- 활성 여부. 1은 활성, 0은 비활성
|
|
28
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
29
|
+
CHECK (is_active IN (0, 1)),
|
|
30
|
+
|
|
31
|
+
-- 확장 메타데이터
|
|
32
|
+
metadata_json JSON
|
|
33
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
34
|
+
|
|
35
|
+
-- 생성 시각
|
|
36
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
37
|
+
|
|
38
|
+
-- 수정 시각
|
|
39
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
40
|
+
|
|
41
|
+
PRIMARY KEY (code_group_code, code),
|
|
42
|
+
|
|
43
|
+
FOREIGN KEY (code_group_code)
|
|
44
|
+
REFERENCES methodology_code_groups (code_group_code)
|
|
45
|
+
ON DELETE CASCADE
|
|
46
|
+
)
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
</details>
|
|
50
|
+
|
|
51
|
+
## Columns
|
|
52
|
+
|
|
53
|
+
| Name | Type | Default | Nullable | Parents |
|
|
54
|
+
| --------------- | ------------ | ----------------- | -------- | ----------------------------------------------------- |
|
|
55
|
+
| code_group_code | VARCHAR(64) | | false | [methodology_code_groups](methodology_code_groups.md) |
|
|
56
|
+
| code | VARCHAR(128) | | false | |
|
|
57
|
+
| code_name | VARCHAR(128) | | false | |
|
|
58
|
+
| description | TEXT | | true | |
|
|
59
|
+
| sort_order | INTEGER | 0 | false | |
|
|
60
|
+
| is_active | INTEGER | 1 | false | |
|
|
61
|
+
| metadata_json | JSON | | true | |
|
|
62
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
63
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | |
|
|
64
|
+
|
|
65
|
+
## Constraints
|
|
66
|
+
|
|
67
|
+
| Name | Type | Definition |
|
|
68
|
+
| ------------------------------------ | ----------- | ----------------------------------------------------------------------------------------------------------------------------------- |
|
|
69
|
+
| code_group_code | PRIMARY KEY | PRIMARY KEY (code_group_code) |
|
|
70
|
+
| code | PRIMARY KEY | PRIMARY KEY (code) |
|
|
71
|
+
| - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (code_group_code) REFERENCES methodology_code_groups (code_group_code) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
|
|
72
|
+
| sqlite_autoindex_methodology_codes_1 | PRIMARY KEY | PRIMARY KEY (code_group_code, code) |
|
|
73
|
+
| - | CHECK | CHECK (is_active IN (0, 1)) |
|
|
74
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
75
|
+
|
|
76
|
+
## Indexes
|
|
77
|
+
|
|
78
|
+
| Name | Definition |
|
|
79
|
+
| ------------------------------------ | ----------------------------------- |
|
|
80
|
+
| sqlite_autoindex_methodology_codes_1 | PRIMARY KEY (code_group_code, code) |
|
|
81
|
+
|
|
82
|
+
## Relations
|
|
83
|
+
|
|
84
|
+

|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
|
3
|
+
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
4
|
+
<!-- Generated by graphviz version 12.1.2 (20240928.0832)
|
|
5
|
+
-->
|
|
6
|
+
<!-- Title: methodology_codes Pages: 1 -->
|
|
7
|
+
<svg width="389pt" height="417pt"
|
|
8
|
+
viewBox="0.00 0.00 388.54 417.37" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
9
|
+
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 413.37)">
|
|
10
|
+
<title>methodology_codes</title>
|
|
11
|
+
<polygon fill="white" stroke="none" points="-4,4 -4,-413.37 384.54,-413.37 384.54,4 -4,4"/>
|
|
12
|
+
<!-- methodology_codes -->
|
|
13
|
+
<g id="node1" class="node">
|
|
14
|
+
<title>methodology_codes</title>
|
|
15
|
+
<polygon fill="#efefef" stroke="none" points="67.25,-317.17 67.25,-363.17 298.37,-363.17 298.37,-317.17 67.25,-317.17"/>
|
|
16
|
+
<polygon fill="none" stroke="black" points="67.25,-317.17 67.25,-363.17 298.37,-363.17 298.37,-317.17 67.25,-317.17"/>
|
|
17
|
+
<text text-anchor="start" x="75.7" y="-340.97" font-family="Arial Bold" font-size="18.00">methodology_codes</text>
|
|
18
|
+
<text text-anchor="start" x="220.67" y="-340.97" font-family="Arial" font-size="14.00"> </text>
|
|
19
|
+
<text text-anchor="start" x="251.79" y="-340.97" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
20
|
+
<text text-anchor="start" x="97.24" y="-326.57" font-family="Arial" font-size="14.00" fill="#333333">코드 그룹별 코드 값을 정의한다.</text>
|
|
21
|
+
<polygon fill="none" stroke="black" points="67.25,-286.37 67.25,-317.17 298.37,-317.17 298.37,-286.37 67.25,-286.37"/>
|
|
22
|
+
<text text-anchor="start" x="74.25" y="-298.57" font-family="Arial" font-size="14.00">code_group_code </text>
|
|
23
|
+
<text text-anchor="start" x="190.24" y="-298.57" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(64)]</text>
|
|
24
|
+
<polygon fill="none" stroke="black" points="67.25,-255.57 67.25,-286.37 298.37,-286.37 298.37,-255.57 67.25,-255.57"/>
|
|
25
|
+
<text text-anchor="start" x="74.25" y="-267.77" font-family="Arial" font-size="14.00">code </text>
|
|
26
|
+
<text text-anchor="start" x="108.5" y="-267.77" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(128)]</text>
|
|
27
|
+
<polygon fill="none" stroke="black" stroke-width="3" points="65.75,-254.07 65.75,-364.67 299.87,-364.67 299.87,-254.07 65.75,-254.07"/>
|
|
28
|
+
</g>
|
|
29
|
+
<!-- methodology_code_groups -->
|
|
30
|
+
<g id="node2" class="node">
|
|
31
|
+
<title>methodology_code_groups</title>
|
|
32
|
+
<polygon fill="#efefef" stroke="none" points="43.2,-84.17 43.2,-130.17 322.42,-130.17 322.42,-84.17 43.2,-84.17"/>
|
|
33
|
+
<polygon fill="none" stroke="black" points="43.2,-84.17 43.2,-130.17 322.42,-130.17 322.42,-84.17 43.2,-84.17"/>
|
|
34
|
+
<text text-anchor="start" x="50.2" y="-107.97" font-family="Arial Bold" font-size="18.00">methodology_code_groups</text>
|
|
35
|
+
<text text-anchor="start" x="246.17" y="-107.97" font-family="Arial" font-size="14.00"> </text>
|
|
36
|
+
<text text-anchor="start" x="277.29" y="-107.97" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
|
|
37
|
+
<text text-anchor="start" x="124.47" y="-93.57" font-family="Arial" font-size="14.00" fill="#333333">코드 그룹을 정의한다.</text>
|
|
38
|
+
<polygon fill="none" stroke="black" points="43.2,-53.37 43.2,-84.17 322.42,-84.17 322.42,-53.37 43.2,-53.37"/>
|
|
39
|
+
<text text-anchor="start" x="50.2" y="-65.57" font-family="Arial" font-size="14.00">code_group_code </text>
|
|
40
|
+
<text text-anchor="start" x="166.19" y="-65.57" font-family="Arial" font-size="14.00" fill="#666666">[VARCHAR(64)]</text>
|
|
41
|
+
</g>
|
|
42
|
+
<!-- methodology_codes->methodology_code_groups -->
|
|
43
|
+
<g id="edge1" class="edge">
|
|
44
|
+
<title>methodology_codes:code_group_code->methodology_code_groups:code_group_code</title>
|
|
45
|
+
<path fill="none" stroke="black" d="M309.32,-299.71C361.98,-277.99 403.55,-91.51 365.62,-53.37 308.33,4.24 182.81,28.88 182.81,-52.37"/>
|
|
46
|
+
<polygon fill="black" stroke="black" points="309.49,-299.67 298.78,-297.3 304.27,-300.76 300.03,-301.64 300.03,-301.64 300.03,-301.64 304.27,-300.76 300.61,-306.11 309.49,-299.67"/>
|
|
47
|
+
</g>
|
|
48
|
+
</g>
|
|
49
|
+
</svg>
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# methodology_common_blueprint_policies
|
|
2
|
+
|
|
3
|
+
## Description
|
|
4
|
+
|
|
5
|
+
<details>
|
|
6
|
+
<summary><strong>Table Definition</strong></summary>
|
|
7
|
+
|
|
8
|
+
```sql
|
|
9
|
+
CREATE TABLE methodology_common_blueprint_policies (
|
|
10
|
+
-- common blueprint policy 식별자
|
|
11
|
+
common_blueprint_policy_id CHAR(36) PRIMARY KEY
|
|
12
|
+
CHECK (length(common_blueprint_policy_id) = 36),
|
|
13
|
+
|
|
14
|
+
-- 소속 방법론 식별자
|
|
15
|
+
methodology_id CHAR(36) NOT NULL
|
|
16
|
+
CHECK (length(methodology_id) = 36),
|
|
17
|
+
|
|
18
|
+
-- policy 코드
|
|
19
|
+
policy_code VARCHAR(128) NOT NULL,
|
|
20
|
+
|
|
21
|
+
-- policy 이름
|
|
22
|
+
policy_name VARCHAR(256) NOT NULL,
|
|
23
|
+
|
|
24
|
+
-- 적용 대상 Artifact Standard 유형 코드. NULL이면 방법론 기본 공통 정책이다.
|
|
25
|
+
applies_to_standard_type_code VARCHAR(64),
|
|
26
|
+
|
|
27
|
+
-- 기본 policy 여부
|
|
28
|
+
is_default INTEGER NOT NULL DEFAULT 0
|
|
29
|
+
CHECK (is_default IN (0, 1)),
|
|
30
|
+
|
|
31
|
+
-- policy 상태 코드
|
|
32
|
+
status_code VARCHAR(32) NOT NULL DEFAULT 'DRAFT'
|
|
33
|
+
CHECK (status_code IN ('DRAFT', 'ACTIVE', 'DEPRECATED', 'ARCHIVED')),
|
|
34
|
+
|
|
35
|
+
-- 활성 여부
|
|
36
|
+
is_active INTEGER NOT NULL DEFAULT 1
|
|
37
|
+
CHECK (is_active IN (0, 1)),
|
|
38
|
+
|
|
39
|
+
-- 생성 시각
|
|
40
|
+
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
41
|
+
|
|
42
|
+
-- 수정 시각
|
|
43
|
+
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
44
|
+
|
|
45
|
+
-- 확장 메타데이터
|
|
46
|
+
metadata_json JSON
|
|
47
|
+
CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
|
|
48
|
+
|
|
49
|
+
FOREIGN KEY (methodology_id)
|
|
50
|
+
REFERENCES methodology_methodologies (methodology_id)
|
|
51
|
+
ON DELETE CASCADE,
|
|
52
|
+
|
|
53
|
+
UNIQUE (methodology_id, policy_code)
|
|
54
|
+
)
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
</details>
|
|
58
|
+
|
|
59
|
+
## Columns
|
|
60
|
+
|
|
61
|
+
| Name | Type | Default | Nullable | Children | Parents |
|
|
62
|
+
| ----------------------------- | ------------ | ----------------- | -------- | ----------------------------------------------------------------------------------------- | --------------------------------------------------------- |
|
|
63
|
+
| common_blueprint_policy_id | CHAR(36) | | true | [methodology_common_blueprint_policy_nodes](methodology_common_blueprint_policy_nodes.md) | |
|
|
64
|
+
| methodology_id | CHAR(36) | | false | | [methodology_methodologies](methodology_methodologies.md) |
|
|
65
|
+
| policy_code | VARCHAR(128) | | false | | |
|
|
66
|
+
| policy_name | VARCHAR(256) | | false | | |
|
|
67
|
+
| applies_to_standard_type_code | VARCHAR(64) | | true | | |
|
|
68
|
+
| is_default | INTEGER | 0 | false | | |
|
|
69
|
+
| status_code | VARCHAR(32) | 'DRAFT' | false | | |
|
|
70
|
+
| is_active | INTEGER | 1 | false | | |
|
|
71
|
+
| created_at | DATETIME | CURRENT_TIMESTAMP | false | | |
|
|
72
|
+
| updated_at | DATETIME | CURRENT_TIMESTAMP | false | | |
|
|
73
|
+
| metadata_json | JSON | | true | | |
|
|
74
|
+
|
|
75
|
+
## Constraints
|
|
76
|
+
|
|
77
|
+
| Name | Type | Definition |
|
|
78
|
+
| -------------------------------------------------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------- |
|
|
79
|
+
| common_blueprint_policy_id | PRIMARY KEY | PRIMARY KEY (common_blueprint_policy_id) |
|
|
80
|
+
| - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (methodology_id) REFERENCES methodology_methodologies (methodology_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
|
|
81
|
+
| sqlite_autoindex_methodology_common_blueprint_policies_2 | UNIQUE | UNIQUE (methodology_id, policy_code) |
|
|
82
|
+
| sqlite_autoindex_methodology_common_blueprint_policies_1 | PRIMARY KEY | PRIMARY KEY (common_blueprint_policy_id) |
|
|
83
|
+
| - | CHECK | CHECK (length(common_blueprint_policy_id) = 36) |
|
|
84
|
+
| - | CHECK | CHECK (length(methodology_id) = 36) |
|
|
85
|
+
| - | CHECK | CHECK (is_default IN (0, 1)) |
|
|
86
|
+
| - | CHECK | CHECK (status_code IN ('DRAFT', 'ACTIVE', 'DEPRECATED', 'ARCHIVED')) |
|
|
87
|
+
| - | CHECK | CHECK (is_active IN (0, 1)) |
|
|
88
|
+
| - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
|
|
89
|
+
|
|
90
|
+
## Indexes
|
|
91
|
+
|
|
92
|
+
| Name | Definition |
|
|
93
|
+
| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
94
|
+
| ux_methodology_common_blueprint_policies_default | CREATE UNIQUE INDEX ux_methodology_common_blueprint_policies_default<br /> ON methodology_common_blueprint_policies (methodology_id)<br /> WHERE is_default = 1 |
|
|
95
|
+
| sqlite_autoindex_methodology_common_blueprint_policies_2 | UNIQUE (methodology_id, policy_code) |
|
|
96
|
+
| sqlite_autoindex_methodology_common_blueprint_policies_1 | PRIMARY KEY (common_blueprint_policy_id) |
|
|
97
|
+
|
|
98
|
+
## Relations
|
|
99
|
+
|
|
100
|
+

|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
> Generated by [tbls](https://github.com/k1LoW/tbls)
|