@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.
Files changed (83) hide show
  1. package/.tbls.yml +54 -0
  2. package/CHANGELOG.md +94 -0
  3. package/README.md +386 -0
  4. package/dist/database.d.ts +8 -0
  5. package/dist/database.d.ts.map +1 -0
  6. package/dist/database.js +76 -0
  7. package/dist/database.js.map +1 -0
  8. package/dist/fixtures.d.ts +11 -0
  9. package/dist/fixtures.d.ts.map +1 -0
  10. package/dist/fixtures.js +537 -0
  11. package/dist/fixtures.js.map +1 -0
  12. package/dist/index.d.ts +72 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +213 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/repositories.d.ts +46 -0
  17. package/dist/repositories.d.ts.map +1 -0
  18. package/dist/repositories.js +730 -0
  19. package/dist/repositories.js.map +1 -0
  20. package/dist/seed-apply.d.ts +20 -0
  21. package/dist/seed-apply.d.ts.map +1 -0
  22. package/dist/seed-apply.js +198 -0
  23. package/dist/seed-apply.js.map +1 -0
  24. package/dist/service.d.ts +40 -0
  25. package/dist/service.d.ts.map +1 -0
  26. package/dist/service.js +105 -0
  27. package/dist/service.js.map +1 -0
  28. package/dist/types.d.ts +499 -0
  29. package/dist/types.d.ts.map +1 -0
  30. package/dist/types.js +2 -0
  31. package/dist/types.js.map +1 -0
  32. package/docs/build.md +27 -0
  33. package/docs/configuration.md +5 -0
  34. package/docs/delivery.md +26 -0
  35. package/docs/operations.md +28 -0
  36. package/docs/publishing.md +43 -0
  37. package/docs/schema/generated/README.md +38 -0
  38. package/docs/schema/generated/artifact_standard_blueprint_nodes.md +137 -0
  39. package/docs/schema/generated/artifact_standard_blueprint_nodes.svg +88 -0
  40. package/docs/schema/generated/artifact_standard_code_groups.md +70 -0
  41. package/docs/schema/generated/artifact_standard_code_groups.svg +49 -0
  42. package/docs/schema/generated/artifact_standard_codes.md +88 -0
  43. package/docs/schema/generated/artifact_standard_codes.svg +49 -0
  44. package/docs/schema/generated/artifact_standard_component_bindings.md +118 -0
  45. package/docs/schema/generated/artifact_standard_component_bindings.svg +73 -0
  46. package/docs/schema/generated/artifact_standard_components.md +114 -0
  47. package/docs/schema/generated/artifact_standard_components.svg +73 -0
  48. package/docs/schema/generated/artifact_standard_diagram_policies.md +99 -0
  49. package/docs/schema/generated/artifact_standard_diagram_policies.svg +49 -0
  50. package/docs/schema/generated/artifact_standard_document_blueprints.md +101 -0
  51. package/docs/schema/generated/artifact_standard_document_blueprints.svg +128 -0
  52. package/docs/schema/generated/artifact_standard_document_component_relations.md +118 -0
  53. package/docs/schema/generated/artifact_standard_document_component_relations.svg +87 -0
  54. package/docs/schema/generated/artifact_standard_document_components.md +148 -0
  55. package/docs/schema/generated/artifact_standard_document_components.svg +139 -0
  56. package/docs/schema/generated/artifact_standard_figure_policies.md +99 -0
  57. package/docs/schema/generated/artifact_standard_figure_policies.svg +49 -0
  58. package/docs/schema/generated/artifact_standard_generated_output_links.md +144 -0
  59. package/docs/schema/generated/artifact_standard_generated_output_links.svg +57 -0
  60. package/docs/schema/generated/artifact_standard_physical_structure_policies.md +124 -0
  61. package/docs/schema/generated/artifact_standard_physical_structure_policies.svg +78 -0
  62. package/docs/schema/generated/artifact_standard_schema_migrations.md +52 -0
  63. package/docs/schema/generated/artifact_standard_schema_migrations.svg +27 -0
  64. package/docs/schema/generated/artifact_standard_source_mappings.md +120 -0
  65. package/docs/schema/generated/artifact_standard_source_mappings.svg +49 -0
  66. package/docs/schema/generated/artifact_standard_standards.md +102 -0
  67. package/docs/schema/generated/artifact_standard_standards.svg +313 -0
  68. package/docs/schema/generated/artifact_standard_table_column_schemas.md +147 -0
  69. package/docs/schema/generated/artifact_standard_table_column_schemas.svg +52 -0
  70. package/docs/schema/generated/artifact_standard_table_schemas.md +99 -0
  71. package/docs/schema/generated/artifact_standard_table_schemas.svg +71 -0
  72. package/docs/schema/generated/artifact_standard_template_slots.md +143 -0
  73. package/docs/schema/generated/artifact_standard_template_slots.svg +88 -0
  74. package/docs/schema/generated/artifact_standard_validation_rule_set_rules.md +128 -0
  75. package/docs/schema/generated/artifact_standard_validation_rule_set_rules.svg +52 -0
  76. package/docs/schema/generated/artifact_standard_validation_rule_sets.md +91 -0
  77. package/docs/schema/generated/artifact_standard_validation_rule_sets.svg +71 -0
  78. package/docs/schema/generated/schema.json +4230 -0
  79. package/docs/schema/generated/schema.mmd +327 -0
  80. package/docs/schema/generated/schema.svg +510 -0
  81. package/docs/usage.md +197 -0
  82. package/package.json +30 -0
  83. package/src/database/migrations/0001_artifact_standard_base.sql +1295 -0
@@ -0,0 +1,313 @@
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: artifact_standard_standards Pages: 1 -->
7
+ <svg width="5749pt" height="472pt"
8
+ viewBox="0.00 0.00 5749.32 471.96" 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 467.96)">
10
+ <title>artifact_standard_standards</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-467.96 5745.32,-467.96 5745.32,4 -4,4"/>
12
+ <!-- artifact_standard_standards -->
13
+ <g id="node1" class="node">
14
+ <title>artifact_standard_standards</title>
15
+ <polygon fill="#efefef" stroke="none" points="3119.81,-90.56 3119.81,-136.56 3437.26,-136.56 3437.26,-90.56 3119.81,-90.56"/>
16
+ <polygon fill="none" stroke="black" points="3119.81,-90.56 3119.81,-136.56 3437.26,-136.56 3437.26,-90.56 3119.81,-90.56"/>
17
+ <text text-anchor="start" x="3144.95" y="-114.36" font-family="Arial Bold" font-size="18.00">artifact_standard_standards</text>
18
+ <text text-anchor="start" x="3342.87" y="-114.36" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="3373.98" y="-114.36" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <text text-anchor="start" x="3126.81" y="-99.96" font-family="Arial" font-size="14.00" fill="#333333">산출물 표준의 최상위 versioned definition을 관리한다.</text>
21
+ <polygon fill="none" stroke="black" points="3119.81,-59.76 3119.81,-90.56 3437.26,-90.56 3437.26,-59.76 3119.81,-59.76"/>
22
+ <text text-anchor="start" x="3126.81" y="-71.96" font-family="Arial" font-size="14.00">artifact_standard_id </text>
23
+ <text text-anchor="start" x="3253.66" y="-71.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
24
+ <polygon fill="none" stroke="black" stroke-width="3" points="3118.31,-58.26 3118.31,-138.06 3438.76,-138.06 3438.76,-58.26 3118.31,-58.26"/>
25
+ </g>
26
+ <!-- artifact_standard_components -->
27
+ <g id="node2" class="node">
28
+ <title>artifact_standard_components</title>
29
+ <polygon fill="#efefef" stroke="none" points="43.2,-349.16 43.2,-395.16 527.87,-395.16 527.87,-349.16 43.2,-349.16"/>
30
+ <polygon fill="none" stroke="black" points="43.2,-349.16 43.2,-395.16 527.87,-395.16 527.87,-349.16 43.2,-349.16"/>
31
+ <text text-anchor="start" x="142.45" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_components</text>
32
+ <text text-anchor="start" x="359.37" y="-372.96" font-family="Arial" font-size="14.00">    </text>
33
+ <text text-anchor="start" x="390.49" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
34
+ <text text-anchor="start" x="50.2" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">산출물 표준을 구성하는 개념, 서식, 가이드, 예시, LLM 보충 지침 resource를 관리한다.</text>
35
+ <polygon fill="none" stroke="black" points="43.2,-318.36 43.2,-349.16 527.87,-349.16 527.87,-318.36 43.2,-318.36"/>
36
+ <text text-anchor="start" x="50.2" y="-330.56" font-family="Arial" font-size="14.00">component_id </text>
37
+ <text text-anchor="start" x="142.04" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
38
+ <polygon fill="none" stroke="black" points="43.2,-287.56 43.2,-318.36 527.87,-318.36 527.87,-287.56 43.2,-287.56"/>
39
+ <text text-anchor="start" x="50.2" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
40
+ <text text-anchor="start" x="177.05" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
41
+ </g>
42
+ <!-- artifact_standard_components&#45;&gt;artifact_standard_standards -->
43
+ <g id="edge1" class="edge">
44
+ <title>artifact_standard_components:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
45
+ <path fill="none" stroke="black" d="M539.02,-301.53C567.94,-292.19 546.23,-239.25 580.53,-218.76 701.79,-146.32 2977.57,-75.16 3118.81,-75.16"/>
46
+ <polygon fill="black" stroke="black" points="539.1,-301.52 528.58,-298.45 533.82,-302.26 529.53,-302.86 529.53,-302.86 529.53,-302.86 533.82,-302.26 529.82,-307.37 539.1,-301.52"/>
47
+ </g>
48
+ <!-- artifact_standard_component_bindings -->
49
+ <g id="node3" class="node">
50
+ <title>artifact_standard_component_bindings</title>
51
+ <polygon fill="#efefef" stroke="none" points="632.44,-369.76 632.44,-405.36 996.62,-405.36 996.62,-369.76 632.44,-369.76"/>
52
+ <polygon fill="none" stroke="black" points="632.44,-369.76 632.44,-405.36 996.62,-405.36 996.62,-369.76 632.44,-369.76"/>
53
+ <text text-anchor="start" x="639.44" y="-383.16" font-family="Arial Bold" font-size="18.00">artifact_standard_component_bindings</text>
54
+ <text text-anchor="start" x="920.37" y="-383.16" font-family="Arial" font-size="14.00">    </text>
55
+ <text text-anchor="start" x="951.49" y="-383.16" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
56
+ <polygon fill="none" stroke="black" points="632.44,-338.96 632.44,-369.76 996.62,-369.76 996.62,-338.96 632.44,-338.96"/>
57
+ <text text-anchor="start" x="639.44" y="-351.16" font-family="Arial" font-size="14.00">component_binding_id </text>
58
+ <text text-anchor="start" x="784.22" y="-351.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
59
+ <polygon fill="none" stroke="black" points="632.44,-308.16 632.44,-338.96 996.62,-338.96 996.62,-308.16 632.44,-308.16"/>
60
+ <text text-anchor="start" x="639.44" y="-320.36" font-family="Arial" font-size="14.00">artifact_standard_id </text>
61
+ <text text-anchor="start" x="766.3" y="-320.36" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
62
+ <polygon fill="none" stroke="black" points="632.44,-277.36 632.44,-308.16 996.62,-308.16 996.62,-277.36 632.44,-277.36"/>
63
+ <text text-anchor="start" x="639.44" y="-289.56" font-family="Arial" font-size="14.00">component_id </text>
64
+ <text text-anchor="start" x="731.28" y="-289.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
65
+ </g>
66
+ <!-- artifact_standard_component_bindings&#45;&gt;artifact_standard_standards -->
67
+ <g id="edge2" class="edge">
68
+ <title>artifact_standard_component_bindings:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
69
+ <path fill="none" stroke="black" d="M1007.65,-322.35C1043.38,-312.56 1008.8,-245.58 1048.53,-218.76 1239.63,-89.72 2888.23,-75.16 3118.81,-75.16"/>
70
+ <polygon fill="black" stroke="black" points="1007.88,-322.32 997.42,-319.05 1002.59,-322.96 998.29,-323.48 998.29,-323.48 998.29,-323.48 1002.59,-322.96 998.49,-327.98 1007.88,-322.32"/>
71
+ </g>
72
+ <!-- artifact_standard_document_blueprints -->
73
+ <g id="node4" class="node">
74
+ <title>artifact_standard_document_blueprints</title>
75
+ <polygon fill="#efefef" stroke="none" points="1100.95,-349.16 1100.95,-395.16 1466.12,-395.16 1466.12,-349.16 1100.95,-349.16"/>
76
+ <polygon fill="none" stroke="black" points="1100.95,-349.16 1100.95,-395.16 1466.12,-395.16 1466.12,-349.16 1100.95,-349.16"/>
77
+ <text text-anchor="start" x="1107.95" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_document_blueprints</text>
78
+ <text text-anchor="start" x="1389.86" y="-372.96" font-family="Arial" font-size="14.00">    </text>
79
+ <text text-anchor="start" x="1420.98" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
80
+ <text text-anchor="start" x="1192.13" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">산출물 문서 구조 기준을 관리한다.</text>
81
+ <polygon fill="none" stroke="black" points="1100.95,-318.36 1100.95,-349.16 1466.12,-349.16 1466.12,-318.36 1100.95,-318.36"/>
82
+ <text text-anchor="start" x="1107.95" y="-330.56" font-family="Arial" font-size="14.00">blueprint_id </text>
83
+ <text text-anchor="start" x="1184.23" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
84
+ <polygon fill="none" stroke="black" points="1100.95,-287.56 1100.95,-318.36 1466.12,-318.36 1466.12,-287.56 1100.95,-287.56"/>
85
+ <text text-anchor="start" x="1107.95" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
86
+ <text text-anchor="start" x="1234.81" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
87
+ </g>
88
+ <!-- artifact_standard_document_blueprints&#45;&gt;artifact_standard_standards -->
89
+ <g id="edge3" class="edge">
90
+ <title>artifact_standard_document_blueprints:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
91
+ <path fill="none" stroke="black" d="M1477.26,-301.55C1506.17,-292.29 1484.64,-239.82 1518.53,-218.76 1670.16,-124.53 2940.29,-75.16 3118.81,-75.16"/>
92
+ <polygon fill="black" stroke="black" points="1477.35,-301.53 1466.83,-298.45 1472.07,-302.27 1467.78,-302.86 1467.78,-302.86 1467.78,-302.86 1472.07,-302.27 1468.07,-307.37 1477.35,-301.53"/>
93
+ </g>
94
+ <!-- artifact_standard_document_components -->
95
+ <g id="node5" class="node">
96
+ <title>artifact_standard_document_components</title>
97
+ <polygon fill="#efefef" stroke="none" points="1570.45,-385.16 1570.45,-420.76 1950.61,-420.76 1950.61,-385.16 1570.45,-385.16"/>
98
+ <polygon fill="none" stroke="black" points="1570.45,-385.16 1570.45,-420.76 1950.61,-420.76 1950.61,-385.16 1570.45,-385.16"/>
99
+ <text text-anchor="start" x="1577.45" y="-398.56" font-family="Arial Bold" font-size="18.00">artifact_standard_document_components</text>
100
+ <text text-anchor="start" x="1874.36" y="-398.56" font-family="Arial" font-size="14.00">    </text>
101
+ <text text-anchor="start" x="1905.48" y="-398.56" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
102
+ <polygon fill="none" stroke="black" points="1570.45,-354.36 1570.45,-385.16 1950.61,-385.16 1950.61,-354.36 1570.45,-354.36"/>
103
+ <text text-anchor="start" x="1577.45" y="-366.56" font-family="Arial" font-size="14.00">document_component_id </text>
104
+ <text text-anchor="start" x="1738.56" y="-366.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
105
+ <polygon fill="none" stroke="black" points="1570.45,-323.56 1570.45,-354.36 1950.61,-354.36 1950.61,-323.56 1570.45,-323.56"/>
106
+ <text text-anchor="start" x="1577.45" y="-335.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
107
+ <text text-anchor="start" x="1704.31" y="-335.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
108
+ <polygon fill="none" stroke="black" points="1570.45,-292.76 1570.45,-323.56 1950.61,-323.56 1950.61,-292.76 1570.45,-292.76"/>
109
+ <text text-anchor="start" x="1577.45" y="-304.96" font-family="Arial" font-size="14.00">blueprint_id </text>
110
+ <text text-anchor="start" x="1653.73" y="-304.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
111
+ <polygon fill="none" stroke="black" points="1570.45,-261.96 1570.45,-292.76 1950.61,-292.76 1950.61,-261.96 1570.45,-261.96"/>
112
+ <text text-anchor="start" x="1577.45" y="-274.16" font-family="Arial" font-size="14.00">parent_document_component_id </text>
113
+ <text text-anchor="start" x="1786.05" y="-274.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
114
+ </g>
115
+ <!-- artifact_standard_document_components&#45;&gt;artifact_standard_standards -->
116
+ <g id="edge4" class="edge">
117
+ <title>artifact_standard_document_components:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
118
+ <path fill="none" stroke="black" d="M1961.8,-337.87C2003.24,-327.86 1960.14,-251.44 2003.53,-218.76 2103.33,-143.58 2993.87,-75.16 3118.81,-75.16"/>
119
+ <polygon fill="black" stroke="black" points="1961.89,-337.86 1951.47,-334.45 1956.58,-338.42 1952.28,-338.88 1952.28,-338.88 1952.28,-338.88 1956.58,-338.42 1952.42,-343.39 1961.89,-337.86"/>
120
+ </g>
121
+ <!-- artifact_standard_document_component_relations -->
122
+ <g id="node6" class="node">
123
+ <title>artifact_standard_document_component_relations</title>
124
+ <polygon fill="#efefef" stroke="none" points="2055.47,-385.16 2055.47,-420.76 2499.6,-420.76 2499.6,-385.16 2055.47,-385.16"/>
125
+ <polygon fill="none" stroke="black" points="2055.47,-385.16 2055.47,-420.76 2499.6,-420.76 2499.6,-385.16 2055.47,-385.16"/>
126
+ <text text-anchor="start" x="2062.47" y="-398.56" font-family="Arial Bold" font-size="18.00">artifact_standard_document_component_relations</text>
127
+ <text text-anchor="start" x="2423.35" y="-398.56" font-family="Arial" font-size="14.00">    </text>
128
+ <text text-anchor="start" x="2454.46" y="-398.56" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
129
+ <polygon fill="none" stroke="black" points="2055.47,-354.36 2055.47,-385.16 2499.6,-385.16 2499.6,-354.36 2055.47,-354.36"/>
130
+ <text text-anchor="start" x="2062.47" y="-366.56" font-family="Arial" font-size="14.00">document_component_relation_id </text>
131
+ <text text-anchor="start" x="2277.28" y="-366.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
132
+ <polygon fill="none" stroke="black" points="2055.47,-323.56 2055.47,-354.36 2499.6,-354.36 2499.6,-323.56 2055.47,-323.56"/>
133
+ <text text-anchor="start" x="2062.47" y="-335.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
134
+ <text text-anchor="start" x="2189.32" y="-335.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
135
+ <polygon fill="none" stroke="black" points="2055.47,-292.76 2055.47,-323.56 2499.6,-323.56 2499.6,-292.76 2055.47,-292.76"/>
136
+ <text text-anchor="start" x="2062.47" y="-304.96" font-family="Arial" font-size="14.00">source_document_component_id </text>
137
+ <text text-anchor="start" x="2273.38" y="-304.96" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
138
+ <polygon fill="none" stroke="black" points="2055.47,-261.96 2055.47,-292.76 2499.6,-292.76 2499.6,-261.96 2055.47,-261.96"/>
139
+ <text text-anchor="start" x="2062.47" y="-274.16" font-family="Arial" font-size="14.00">target_document_component_id </text>
140
+ <text text-anchor="start" x="2267.16" y="-274.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
141
+ </g>
142
+ <!-- artifact_standard_document_component_relations&#45;&gt;artifact_standard_standards -->
143
+ <g id="edge5" class="edge">
144
+ <title>artifact_standard_document_component_relations:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
145
+ <path fill="none" stroke="black" d="M2510.82,-337.9C2552.5,-328.2 2511.18,-253.99 2552.53,-218.76 2651.35,-134.56 2988.99,-75.16 3118.81,-75.16"/>
146
+ <polygon fill="black" stroke="black" points="2510.88,-337.89 2500.47,-334.44 2505.57,-338.44 2501.27,-338.89 2501.27,-338.89 2501.27,-338.89 2505.57,-338.44 2501.4,-343.4 2510.88,-337.89"/>
147
+ </g>
148
+ <!-- artifact_standard_physical_structure_policies -->
149
+ <g id="node7" class="node">
150
+ <title>artifact_standard_physical_structure_policies</title>
151
+ <polygon fill="#efefef" stroke="none" points="2604.47,-369.76 2604.47,-405.36 3014.6,-405.36 3014.6,-369.76 2604.47,-369.76"/>
152
+ <polygon fill="none" stroke="black" points="2604.47,-369.76 2604.47,-405.36 3014.6,-405.36 3014.6,-369.76 2604.47,-369.76"/>
153
+ <text text-anchor="start" x="2611.47" y="-383.16" font-family="Arial Bold" font-size="18.00">artifact_standard_physical_structure_policies</text>
154
+ <text text-anchor="start" x="2938.35" y="-383.16" font-family="Arial" font-size="14.00">    </text>
155
+ <text text-anchor="start" x="2969.47" y="-383.16" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
156
+ <polygon fill="none" stroke="black" points="2604.47,-338.96 2604.47,-369.76 3014.6,-369.76 3014.6,-338.96 2604.47,-338.96"/>
157
+ <text text-anchor="start" x="2611.47" y="-351.16" font-family="Arial" font-size="14.00">physical_structure_policy_id </text>
158
+ <text text-anchor="start" x="2790.44" y="-351.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
159
+ <polygon fill="none" stroke="black" points="2604.47,-308.16 2604.47,-338.96 3014.6,-338.96 3014.6,-308.16 2604.47,-308.16"/>
160
+ <text text-anchor="start" x="2611.47" y="-320.36" font-family="Arial" font-size="14.00">artifact_standard_id </text>
161
+ <text text-anchor="start" x="2738.32" y="-320.36" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
162
+ <polygon fill="none" stroke="black" points="2604.47,-277.36 2604.47,-308.16 3014.6,-308.16 3014.6,-277.36 2604.47,-277.36"/>
163
+ <text text-anchor="start" x="2611.47" y="-289.56" font-family="Arial" font-size="14.00">document_component_id </text>
164
+ <text text-anchor="start" x="2772.57" y="-289.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
165
+ </g>
166
+ <!-- artifact_standard_physical_structure_policies&#45;&gt;artifact_standard_standards -->
167
+ <g id="edge6" class="edge">
168
+ <title>artifact_standard_physical_structure_policies:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
169
+ <path fill="none" stroke="black" d="M3025.66,-320.93C3073.68,-294.39 3062.65,-75.16 3118.81,-75.16"/>
170
+ <polygon fill="black" stroke="black" points="3025.6,-320.95 3014.79,-319.12 3020.44,-322.29 3016.25,-323.39 3016.25,-323.39 3016.25,-323.39 3020.44,-322.29 3017.06,-327.83 3025.6,-320.95"/>
171
+ </g>
172
+ <!-- artifact_standard_table_schemas -->
173
+ <g id="node8" class="node">
174
+ <title>artifact_standard_table_schemas</title>
175
+ <polygon fill="#efefef" stroke="none" points="3119.46,-349.16 3119.46,-395.16 3437.61,-395.16 3437.61,-349.16 3119.46,-349.16"/>
176
+ <polygon fill="none" stroke="black" points="3119.46,-349.16 3119.46,-395.16 3437.61,-395.16 3437.61,-349.16 3119.46,-349.16"/>
177
+ <text text-anchor="start" x="3126.46" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_table_schemas</text>
178
+ <text text-anchor="start" x="3361.35" y="-372.96" font-family="Arial" font-size="14.00">    </text>
179
+ <text text-anchor="start" x="3392.47" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
180
+ <text text-anchor="start" x="3180.12" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">산출물 표 단위 schema를 관리한다.</text>
181
+ <polygon fill="none" stroke="black" points="3119.46,-318.36 3119.46,-349.16 3437.61,-349.16 3437.61,-318.36 3119.46,-318.36"/>
182
+ <text text-anchor="start" x="3126.46" y="-330.56" font-family="Arial" font-size="14.00">table_schema_id </text>
183
+ <text text-anchor="start" x="3236.2" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
184
+ <polygon fill="none" stroke="black" points="3119.46,-287.56 3119.46,-318.36 3437.61,-318.36 3437.61,-287.56 3119.46,-287.56"/>
185
+ <text text-anchor="start" x="3126.46" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
186
+ <text text-anchor="start" x="3253.31" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
187
+ </g>
188
+ <!-- artifact_standard_table_schemas&#45;&gt;artifact_standard_standards -->
189
+ <g id="edge7" class="edge">
190
+ <title>artifact_standard_table_schemas:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
191
+ <path fill="none" stroke="black" d="M3279.12,-276.21C3289.35,-190.4 3431.94,-266.6 3483.46,-182.76 3512.08,-136.18 3522.02,-98.5 3483.46,-59.76 3419.21,4.8 3278.53,32.32 3278.53,-58.76"/>
192
+ <polygon fill="black" stroke="black" points="3279.11,-276.24 3274.06,-285.97 3278.81,-281.56 3278.57,-285.89 3278.57,-285.89 3278.57,-285.89 3278.81,-281.56 3283.05,-286.47 3279.11,-276.24"/>
193
+ </g>
194
+ <!-- artifact_standard_figure_policies -->
195
+ <g id="node9" class="node">
196
+ <title>artifact_standard_figure_policies</title>
197
+ <polygon fill="#efefef" stroke="none" points="3541.96,-349.16 3541.96,-395.16 3863.11,-395.16 3863.11,-349.16 3541.96,-349.16"/>
198
+ <polygon fill="none" stroke="black" points="3541.96,-349.16 3541.96,-395.16 3863.11,-395.16 3863.11,-349.16 3541.96,-349.16"/>
199
+ <text text-anchor="start" x="3548.96" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_figure_policies</text>
200
+ <text text-anchor="start" x="3786.86" y="-372.96" font-family="Arial" font-size="14.00">    </text>
201
+ <text text-anchor="start" x="3817.97" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
202
+ <text text-anchor="start" x="3604.89" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">figure 작성/표현 policy를 관리한다.</text>
203
+ <polygon fill="none" stroke="black" points="3541.96,-318.36 3541.96,-349.16 3863.11,-349.16 3863.11,-318.36 3541.96,-318.36"/>
204
+ <text text-anchor="start" x="3548.96" y="-330.56" font-family="Arial" font-size="14.00">figure_policy_id </text>
205
+ <text text-anchor="start" x="3650.13" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
206
+ <polygon fill="none" stroke="black" points="3541.96,-287.56 3541.96,-318.36 3863.11,-318.36 3863.11,-287.56 3541.96,-287.56"/>
207
+ <text text-anchor="start" x="3548.96" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
208
+ <text text-anchor="start" x="3675.81" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
209
+ </g>
210
+ <!-- artifact_standard_figure_policies&#45;&gt;artifact_standard_standards -->
211
+ <g id="edge8" class="edge">
212
+ <title>artifact_standard_figure_policies:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
213
+ <path fill="none" stroke="black" d="M3530.98,-300.24C3486.24,-274.54 3490.21,-75.16 3438.26,-75.16"/>
214
+ <polygon fill="black" stroke="black" points="3530.98,-300.24 3539.45,-307.21 3536.13,-301.64 3540.31,-302.78 3540.31,-302.78 3540.31,-302.78 3536.13,-301.64 3541.82,-298.53 3530.98,-300.24"/>
215
+ </g>
216
+ <!-- artifact_standard_diagram_policies -->
217
+ <g id="node10" class="node">
218
+ <title>artifact_standard_diagram_policies</title>
219
+ <polygon fill="#efefef" stroke="none" points="3967.96,-349.16 3967.96,-395.16 4305.11,-395.16 4305.11,-349.16 3967.96,-349.16"/>
220
+ <polygon fill="none" stroke="black" points="3967.96,-349.16 3967.96,-395.16 4305.11,-395.16 4305.11,-349.16 3967.96,-349.16"/>
221
+ <text text-anchor="start" x="3974.96" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_diagram_policies</text>
222
+ <text text-anchor="start" x="4228.86" y="-372.96" font-family="Arial" font-size="14.00">    </text>
223
+ <text text-anchor="start" x="4259.97" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
224
+ <text text-anchor="start" x="4031.11" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">diagram 작성/표현 policy를 관리한다.</text>
225
+ <polygon fill="none" stroke="black" points="3967.96,-318.36 3967.96,-349.16 4305.11,-349.16 4305.11,-318.36 3967.96,-318.36"/>
226
+ <text text-anchor="start" x="3974.96" y="-330.56" font-family="Arial" font-size="14.00">diagram_policy_id </text>
227
+ <text text-anchor="start" x="4091.69" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
228
+ <polygon fill="none" stroke="black" points="3967.96,-287.56 3967.96,-318.36 4305.11,-318.36 4305.11,-287.56 3967.96,-287.56"/>
229
+ <text text-anchor="start" x="3974.96" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
230
+ <text text-anchor="start" x="4101.81" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
231
+ </g>
232
+ <!-- artifact_standard_diagram_policies&#45;&gt;artifact_standard_standards -->
233
+ <g id="edge9" class="edge">
234
+ <title>artifact_standard_diagram_policies:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
235
+ <path fill="none" stroke="black" d="M3956.76,-301.63C3927.48,-292.89 3947.13,-243.14 3915.53,-218.76 3740.18,-83.4 3659.77,-75.16 3438.26,-75.16"/>
236
+ <polygon fill="black" stroke="black" points="3956.71,-301.62 3966.05,-307.37 3962,-302.31 3966.29,-302.87 3966.29,-302.87 3966.29,-302.87 3962,-302.31 3967.21,-298.45 3956.71,-301.62"/>
237
+ </g>
238
+ <!-- artifact_standard_validation_rule_sets -->
239
+ <g id="node11" class="node">
240
+ <title>artifact_standard_validation_rule_sets</title>
241
+ <polygon fill="#efefef" stroke="none" points="4409.45,-349.16 4409.45,-395.16 4767.61,-395.16 4767.61,-349.16 4409.45,-349.16"/>
242
+ <polygon fill="none" stroke="black" points="4409.45,-349.16 4409.45,-395.16 4767.61,-395.16 4767.61,-349.16 4409.45,-349.16"/>
243
+ <text text-anchor="start" x="4416.45" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_validation_rule_sets</text>
244
+ <text text-anchor="start" x="4691.36" y="-372.96" font-family="Arial" font-size="14.00">    </text>
245
+ <text text-anchor="start" x="4722.48" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
246
+ <text text-anchor="start" x="4442.65" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">산출물 표준에 적용할 validation rule set을 관리한다.</text>
247
+ <polygon fill="none" stroke="black" points="4409.45,-318.36 4409.45,-349.16 4767.61,-349.16 4767.61,-318.36 4409.45,-318.36"/>
248
+ <text text-anchor="start" x="4416.45" y="-330.56" font-family="Arial" font-size="14.00">validation_rule_set_id </text>
249
+ <text text-anchor="start" x="4555.77" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
250
+ <polygon fill="none" stroke="black" points="4409.45,-287.56 4409.45,-318.36 4767.61,-318.36 4767.61,-287.56 4409.45,-287.56"/>
251
+ <text text-anchor="start" x="4416.45" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
252
+ <text text-anchor="start" x="4543.31" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
253
+ </g>
254
+ <!-- artifact_standard_validation_rule_sets&#45;&gt;artifact_standard_standards -->
255
+ <g id="edge10" class="edge">
256
+ <title>artifact_standard_validation_rule_sets:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
257
+ <path fill="none" stroke="black" d="M4398.33,-301.58C4369.43,-292.49 4390.59,-240.93 4357.53,-218.76 4185.83,-103.56 3645.02,-75.16 3438.26,-75.16"/>
258
+ <polygon fill="black" stroke="black" points="4398.21,-301.56 4407.52,-307.37 4403.5,-302.28 4407.79,-302.86 4407.79,-302.86 4407.79,-302.86 4403.5,-302.28 4408.73,-298.45 4398.21,-301.56"/>
259
+ </g>
260
+ <!-- artifact_standard_generated_output_links -->
261
+ <g id="node12" class="node">
262
+ <title>artifact_standard_generated_output_links</title>
263
+ <polygon fill="#efefef" stroke="none" points="4872.46,-369.76 4872.46,-405.36 5254.61,-405.36 5254.61,-369.76 4872.46,-369.76"/>
264
+ <polygon fill="none" stroke="black" points="4872.46,-369.76 4872.46,-405.36 5254.61,-405.36 5254.61,-369.76 4872.46,-369.76"/>
265
+ <text text-anchor="start" x="4879.46" y="-383.16" font-family="Arial Bold" font-size="18.00">artifact_standard_generated_output_links</text>
266
+ <text text-anchor="start" x="5178.36" y="-383.16" font-family="Arial" font-size="14.00">    </text>
267
+ <text text-anchor="start" x="5209.47" y="-383.16" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
268
+ <polygon fill="none" stroke="black" points="4872.46,-338.96 4872.46,-369.76 5254.61,-369.76 5254.61,-338.96 4872.46,-338.96"/>
269
+ <text text-anchor="start" x="4879.46" y="-351.16" font-family="Arial" font-size="14.00">generated_output_link_id </text>
270
+ <text text-anchor="start" x="5040.59" y="-351.16" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
271
+ <polygon fill="none" stroke="black" points="4872.46,-308.16 4872.46,-338.96 5254.61,-338.96 5254.61,-308.16 4872.46,-308.16"/>
272
+ <text text-anchor="start" x="4879.46" y="-320.36" font-family="Arial" font-size="14.00">source_artifact_standard_id </text>
273
+ <text text-anchor="start" x="5056.12" y="-320.36" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
274
+ <polygon fill="none" stroke="black" points="4872.46,-277.36 4872.46,-308.16 5254.61,-308.16 5254.61,-277.36 4872.46,-277.36"/>
275
+ <text text-anchor="start" x="4879.46" y="-289.56" font-family="Arial" font-size="14.00">target_artifact_standard_id </text>
276
+ <text text-anchor="start" x="5049.9" y="-289.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
277
+ </g>
278
+ <!-- artifact_standard_generated_output_links&#45;&gt;artifact_standard_standards -->
279
+ <g id="edge11" class="edge">
280
+ <title>artifact_standard_generated_output_links:target_artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
281
+ <path fill="none" stroke="black" d="M4861.38,-291.3C4835.2,-282.6 4850.79,-237.12 4819.53,-218.76 4686.5,-140.58 3592.56,-75.16 3438.26,-75.16"/>
282
+ <polygon fill="black" stroke="black" points="4861.23,-291.28 4870.48,-297.16 4866.51,-292.04 4870.8,-292.66 4870.8,-292.66 4870.8,-292.66 4866.51,-292.04 4871.77,-288.25 4861.23,-291.28"/>
283
+ </g>
284
+ <!-- artifact_standard_generated_output_links&#45;&gt;artifact_standard_standards -->
285
+ <g id="edge12" class="edge">
286
+ <title>artifact_standard_generated_output_links:source_artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
287
+ <path fill="none" stroke="black" d="M4861.38,-322.36C4825.35,-312.65 4859.06,-246.21 4819.53,-218.76 4692.81,-130.72 3592.56,-75.16 3438.26,-75.16"/>
288
+ <polygon fill="black" stroke="black" points="4861.19,-322.34 4870.6,-327.98 4866.49,-322.97 4870.79,-323.48 4870.79,-323.48 4870.79,-323.48 4866.49,-322.97 4871.65,-319.05 4861.19,-322.34"/>
289
+ </g>
290
+ <!-- artifact_standard_source_mappings -->
291
+ <g id="node13" class="node">
292
+ <title>artifact_standard_source_mappings</title>
293
+ <polygon fill="#efefef" stroke="none" points="5358.95,-349.16 5358.95,-395.16 5698.12,-395.16 5698.12,-349.16 5358.95,-349.16"/>
294
+ <polygon fill="none" stroke="black" points="5358.95,-349.16 5358.95,-395.16 5698.12,-395.16 5698.12,-349.16 5358.95,-349.16"/>
295
+ <text text-anchor="start" x="5365.95" y="-372.96" font-family="Arial Bold" font-size="18.00">artifact_standard_source_mappings</text>
296
+ <text text-anchor="start" x="5621.86" y="-372.96" font-family="Arial" font-size="14.00">    </text>
297
+ <text text-anchor="start" x="5652.98" y="-372.96" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
298
+ <text text-anchor="start" x="5369.82" y="-358.56" font-family="Arial" font-size="14.00" fill="#333333">설계 근거 및 후속 이행 후보 source mapping을 관리한다.</text>
299
+ <polygon fill="none" stroke="black" points="5358.95,-318.36 5358.95,-349.16 5698.12,-349.16 5698.12,-318.36 5358.95,-318.36"/>
300
+ <text text-anchor="start" x="5365.95" y="-330.56" font-family="Arial" font-size="14.00">source_mapping_id </text>
301
+ <text text-anchor="start" x="5492.03" y="-330.56" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
302
+ <polygon fill="none" stroke="black" points="5358.95,-287.56 5358.95,-318.36 5698.12,-318.36 5698.12,-287.56 5358.95,-287.56"/>
303
+ <text text-anchor="start" x="5365.95" y="-299.76" font-family="Arial" font-size="14.00">artifact_standard_id </text>
304
+ <text text-anchor="start" x="5492.81" y="-299.76" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
305
+ </g>
306
+ <!-- artifact_standard_source_mappings&#45;&gt;artifact_standard_standards -->
307
+ <g id="edge13" class="edge">
308
+ <title>artifact_standard_source_mappings:artifact_standard_id&#45;&gt;artifact_standard_standards:artifact_standard_id</title>
309
+ <path fill="none" stroke="black" d="M5347.81,-301.54C5318.92,-292.25 5340.56,-239.6 5306.53,-218.76 5129,-110 3646.46,-75.16 3438.26,-75.16"/>
310
+ <polygon fill="black" stroke="black" points="5347.72,-301.53 5357,-307.37 5353,-302.27 5357.29,-302.86 5357.29,-302.86 5357.29,-302.86 5353,-302.27 5358.24,-298.45 5347.72,-301.53"/>
311
+ </g>
312
+ </g>
313
+ </svg>
@@ -0,0 +1,147 @@
1
+ # artifact_standard_table_column_schemas
2
+
3
+ ## Description
4
+
5
+ 산출물 표의 column 단위 schema를 관리한다.
6
+
7
+ <details>
8
+ <summary><strong>Table Definition</strong></summary>
9
+
10
+ ```sql
11
+ CREATE TABLE artifact_standard_table_column_schemas (
12
+ -- table column schema 식별자
13
+ table_column_schema_id CHAR(36) PRIMARY KEY
14
+ CHECK (length(table_column_schema_id) = 36),
15
+
16
+ -- 소속 table schema 식별자
17
+ table_schema_id CHAR(36) NOT NULL
18
+ CHECK (length(table_schema_id) = 36),
19
+
20
+ -- column 코드
21
+ column_code VARCHAR(128) NOT NULL,
22
+
23
+ -- 표시 column명
24
+ display_name VARCHAR(256) NOT NULL,
25
+
26
+ -- 값 유형 코드
27
+ value_type_code VARCHAR(64) NOT NULL DEFAULT 'TEXT',
28
+
29
+ -- 필수 여부
30
+ is_required INTEGER NOT NULL DEFAULT 1
31
+ CHECK (is_required IN (0, 1)),
32
+
33
+ -- NULL 허용 여부
34
+ is_nullable INTEGER NOT NULL DEFAULT 0
35
+ CHECK (is_nullable IN (0, 1)),
36
+
37
+ -- 표시 정렬 순서
38
+ sort_order INTEGER NOT NULL DEFAULT 0,
39
+
40
+ -- 코드셋 참조
41
+ code_set_ref VARCHAR(256),
42
+
43
+ -- 허용값 참조
44
+ allowed_values_ref VARCHAR(256),
45
+
46
+ -- validation rule 참조
47
+ validation_rule_ref VARCHAR(256),
48
+
49
+ -- 정규식 패턴
50
+ pattern VARCHAR(512),
51
+
52
+ -- 최소 숫자값
53
+ min_value DECIMAL,
54
+
55
+ -- 최대 숫자값
56
+ max_value DECIMAL,
57
+
58
+ -- 최소 길이
59
+ min_length INTEGER,
60
+
61
+ -- 최대 길이
62
+ max_length INTEGER,
63
+
64
+ -- 예시값
65
+ example_value TEXT,
66
+
67
+ -- 설명
68
+ description TEXT,
69
+
70
+ -- 생성 시각
71
+ created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
72
+
73
+ -- 수정 시각
74
+ updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
75
+
76
+ -- 확장 메타데이터
77
+ metadata_json JSON
78
+ CHECK (metadata_json IS NULL OR json_valid(metadata_json)),
79
+
80
+ FOREIGN KEY (table_schema_id)
81
+ REFERENCES artifact_standard_table_schemas (table_schema_id)
82
+ ON DELETE CASCADE,
83
+
84
+ UNIQUE (table_schema_id, column_code),
85
+ UNIQUE (table_schema_id, sort_order)
86
+ )
87
+ ```
88
+
89
+ </details>
90
+
91
+ ## Columns
92
+
93
+ | Name | Type | Default | Nullable | Parents |
94
+ | ---------------------- | ------------ | ----------------- | -------- | --------------------------------------------------------------------- |
95
+ | table_column_schema_id | CHAR(36) | | true | |
96
+ | table_schema_id | CHAR(36) | | false | [artifact_standard_table_schemas](artifact_standard_table_schemas.md) |
97
+ | column_code | VARCHAR(128) | | false | |
98
+ | display_name | VARCHAR(256) | | false | |
99
+ | value_type_code | VARCHAR(64) | 'TEXT' | false | |
100
+ | is_required | INTEGER | 1 | false | |
101
+ | is_nullable | INTEGER | 0 | false | |
102
+ | sort_order | INTEGER | 0 | false | |
103
+ | code_set_ref | VARCHAR(256) | | true | |
104
+ | allowed_values_ref | VARCHAR(256) | | true | |
105
+ | validation_rule_ref | VARCHAR(256) | | true | |
106
+ | pattern | VARCHAR(512) | | true | |
107
+ | min_value | DECIMAL | | true | |
108
+ | max_value | DECIMAL | | true | |
109
+ | min_length | INTEGER | | true | |
110
+ | max_length | INTEGER | | true | |
111
+ | example_value | TEXT | | true | |
112
+ | description | TEXT | | true | |
113
+ | created_at | DATETIME | CURRENT_TIMESTAMP | false | |
114
+ | updated_at | DATETIME | CURRENT_TIMESTAMP | false | |
115
+ | metadata_json | JSON | | true | |
116
+
117
+ ## Constraints
118
+
119
+ | Name | Type | Definition |
120
+ | --------------------------------------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
121
+ | table_column_schema_id | PRIMARY KEY | PRIMARY KEY (table_column_schema_id) |
122
+ | - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (table_schema_id) REFERENCES artifact_standard_table_schemas (table_schema_id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE |
123
+ | sqlite_autoindex_artifact_standard_table_column_schemas_3 | UNIQUE | UNIQUE (table_schema_id, sort_order) |
124
+ | sqlite_autoindex_artifact_standard_table_column_schemas_2 | UNIQUE | UNIQUE (table_schema_id, column_code) |
125
+ | sqlite_autoindex_artifact_standard_table_column_schemas_1 | PRIMARY KEY | PRIMARY KEY (table_column_schema_id) |
126
+ | - | CHECK | CHECK (length(table_column_schema_id) = 36) |
127
+ | - | CHECK | CHECK (length(table_schema_id) = 36) |
128
+ | - | CHECK | CHECK (is_required IN (0, 1)) |
129
+ | - | CHECK | CHECK (is_nullable IN (0, 1)) |
130
+ | - | CHECK | CHECK (metadata_json IS NULL OR json_valid(metadata_json)) |
131
+
132
+ ## Indexes
133
+
134
+ | Name | Definition |
135
+ | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
136
+ | idx_artifact_standard_table_columns_schema | CREATE INDEX idx_artifact_standard_table_columns_schema<br /> ON artifact_standard_table_column_schemas (table_schema_id) |
137
+ | sqlite_autoindex_artifact_standard_table_column_schemas_3 | UNIQUE (table_schema_id, sort_order) |
138
+ | sqlite_autoindex_artifact_standard_table_column_schemas_2 | UNIQUE (table_schema_id, column_code) |
139
+ | sqlite_autoindex_artifact_standard_table_column_schemas_1 | PRIMARY KEY (table_column_schema_id) |
140
+
141
+ ## Relations
142
+
143
+ ![er](artifact_standard_table_column_schemas.svg)
144
+
145
+ ---
146
+
147
+ > Generated by [tbls](https://github.com/k1LoW/tbls)
@@ -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: artifact_standard_table_column_schemas Pages: 1 -->
7
+ <svg width="482pt" height="438pt"
8
+ viewBox="0.00 0.00 481.54 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>artifact_standard_table_column_schemas</title>
11
+ <polygon fill="white" stroke="none" points="-4,4 -4,-434 477.54,-434 477.54,4 -4,4"/>
12
+ <!-- artifact_standard_table_column_schemas -->
13
+ <g id="node1" class="node">
14
+ <title>artifact_standard_table_column_schemas</title>
15
+ <polygon fill="#efefef" stroke="none" points="46.2,-337.8 46.2,-383.8 427.34,-383.8 427.34,-337.8 46.2,-337.8"/>
16
+ <polygon fill="none" stroke="black" points="46.2,-337.8 46.2,-383.8 427.34,-383.8 427.34,-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">artifact_standard_table_column_schemas</text>
18
+ <text text-anchor="start" x="351.09" y="-361.6" font-family="Arial" font-size="14.00">    </text>
19
+ <text text-anchor="start" x="382.2" y="-361.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
20
+ <text text-anchor="start" x="108.01" y="-347.2" font-family="Arial" font-size="14.00" fill="#333333">산출물 표의 column 단위 schema를 관리한다.</text>
21
+ <polygon fill="none" stroke="black" points="46.2,-307 46.2,-337.8 427.34,-337.8 427.34,-307 46.2,-307"/>
22
+ <text text-anchor="start" x="53.2" y="-319.2" font-family="Arial" font-size="14.00">table_column_schema_id </text>
23
+ <text text-anchor="start" x="215.85" 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 427.34,-307 427.34,-276.2 46.2,-276.2"/>
25
+ <text text-anchor="start" x="53.2" y="-288.4" font-family="Arial" font-size="14.00">table_schema_id </text>
26
+ <text text-anchor="start" x="162.94" 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 428.84,-385.3 428.84,-274.7 44.7,-274.7"/>
28
+ </g>
29
+ <!-- artifact_standard_table_schemas -->
30
+ <g id="node2" class="node">
31
+ <title>artifact_standard_table_schemas</title>
32
+ <polygon fill="#efefef" stroke="none" points="77.7,-104.8 77.7,-150.8 395.85,-150.8 395.85,-104.8 77.7,-104.8"/>
33
+ <polygon fill="none" stroke="black" points="77.7,-104.8 77.7,-150.8 395.85,-150.8 395.85,-104.8 77.7,-104.8"/>
34
+ <text text-anchor="start" x="84.7" y="-128.6" font-family="Arial Bold" font-size="18.00">artifact_standard_table_schemas</text>
35
+ <text text-anchor="start" x="319.59" y="-128.6" font-family="Arial" font-size="14.00">    </text>
36
+ <text text-anchor="start" x="350.71" y="-128.6" font-family="Arial" font-size="14.00" fill="#666666">[table]</text>
37
+ <text text-anchor="start" x="138.36" y="-114.2" font-family="Arial" font-size="14.00" fill="#333333">산출물 표 단위 schema를 관리한다.</text>
38
+ <polygon fill="none" stroke="black" points="77.7,-74 77.7,-104.8 395.85,-104.8 395.85,-74 77.7,-74"/>
39
+ <text text-anchor="start" x="84.7" y="-86.2" font-family="Arial" font-size="14.00">table_schema_id </text>
40
+ <text text-anchor="start" x="194.43" y="-86.2" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
41
+ <polygon fill="none" stroke="black" points="77.7,-43.2 77.7,-74 395.85,-74 395.85,-43.2 77.7,-43.2"/>
42
+ <text text-anchor="start" x="84.7" y="-55.4" font-family="Arial" font-size="14.00">artifact_standard_id </text>
43
+ <text text-anchor="start" x="211.55" y="-55.4" font-family="Arial" font-size="14.00" fill="#666666">[CHAR(36)]</text>
44
+ </g>
45
+ <!-- artifact_standard_table_column_schemas&#45;&gt;artifact_standard_table_schemas -->
46
+ <g id="edge1" class="edge">
47
+ <title>artifact_standard_table_column_schemas:table_schema_id&#45;&gt;artifact_standard_table_schemas:table_schema_id</title>
48
+ <path fill="none" stroke="black" d="M237.52,-264.96C247.6,-201.69 356.03,-258.33 395.85,-194 420.31,-154.47 443.34,-89.4 396.85,-89.4"/>
49
+ <polygon fill="black" stroke="black" points="237.53,-264.89 232.31,-274.54 237.14,-270.21 236.82,-274.53 236.82,-274.53 236.82,-274.53 237.14,-270.21 241.28,-275.2 237.53,-264.89"/>
50
+ </g>
51
+ </g>
52
+ </svg>