# 주제 안의 축과 기록을 잇는 자리 ## Alternative text 왼쪽부터 topic, topic_variant, record_variant 로 이어지고 record_variant 가 document·open_question·project_decision 세 테이블을 가리키는 구조도. ## Long description 왼쪽에 topic 이 있고 variant_label 로 축의 이름을 스스로 정한다. 그 오른쪽에 topic_variant 가 있고 SPA, Mediator, BFF, Forward-Auth 같은 축의 값들을 담는다. 그 오른쪽에 record_variant 가 있고 어느 기록이 어느 축에 걸리는지를 종류와 아이디의 쌍으로 적는다. record_variant 는 오른쪽의 document, open_question, project_decision 세 테이블을 가리키는데, 기록이 종류마다 다른 테이블에 살기 때문에 외래키를 걸지 못하고 쌍으로만 가리킨다. ## Elements and evidence - **Boundary: 종류별 테이블** (system): No additional description. Evidence: L1382–L1384. - **topic** (database): 주제. 축의 이름을 주제가 정한다. Evidence: L1368–L1370, L1377–L1379. - **topic_variant** (database): 축의 값들. Evidence: L1371–L1371, L1358–L1359. - **record_variant** (database): 어느 기록이 어느 축에 걸리는지 적는 자리. 외래키를 걸지 못한다. Evidence: L1372–L1372, L1382–L1384. - **document** (database): 기록 테이블 하나. Evidence: L1382–L1384. - **open_question** (database): 기록 테이블 하나. Evidence: L1382–L1384. - **project_decision** (database): 기록 테이블 하나. Evidence: L1382–L1384. ## Relationships - **topic → topic_variant:** 1 : N. Evidence: L1368–L1371. - **topic_variant → record_variant:** 축에 건다. Evidence: L1371–L1372. - **record_variant → document:** (kind, id). Evidence: L1372–L1384. - **record_variant → open_question:** (kind, id). Evidence: L1372–L1384. - **record_variant → project_decision:** (kind, id). Evidence: L1372–L1384.