Files
document-haness/examples/golden/n+1liner/.techviz/target-schema/spec.json
T

177 lines
4.5 KiB
JSON
Executable File

{
"version": "1.1",
"id": "target-schema",
"title": "목표 스키마에 추가되는 mention 관계",
"question": "목표 모델에서 기존 users는 mentioned 사용자 역할로 feed_item_mentions에 어떻게 연결되는가?",
"type": "erd",
"direction": "LR",
"audience": [
"백엔드 개발자"
],
"summary": "기준선 관계에 feed_items와 기존 users를 잇는 feed_item_mentions 관계가 추가된다.",
"alt": "기존 users를 mentioned 사용자 역할로 재사용해 feed_item_mentions와 연결한 5노드 목표 관계도.",
"long_description": "왼쪽의 users와 pages가 중앙의 feed_items에 연결된다. 오른쪽에는 highlights와 feed_item_mentions가 놓인다. feed_items는 두 엔티티에 각각 연결되고, 기존 users도 mentioned 사용자 역할로 feed_item_mentions에 연결된다.",
"source_context": {
"document": "/home/donghyeon/workspace/ai-tool/topic-arrange/n+1liner/n+1liner.md",
"document_sha256": "1bb38964ca2a849690f5355646c1aa988111b4cd4e1055c6cb05cf7e5fc35cde",
"anchor": {
"kind": "marker",
"value": "target-schema",
"line": 45
}
},
"composition": {
"profile": "component-flow",
"diagram_only": true,
"reference_ids": [
"payment-event-flow"
],
"rationale": "기준선의 연결 경로와 feed_item_mentions를 통한 추가 연결을 하나의 방향성 있는 관계망으로 읽게 하는 구조가 목표 모델의 차이를 직접 드러낸다.",
"focus_node": "feed-items"
},
"groups": [],
"nodes": [
{
"id": "users",
"label": "users",
"kind": "entity",
"role": "source",
"evidence": [
{
"start_line": 35,
"end_line": 35
}
],
"assumption": false
},
{
"id": "pages",
"label": "pages",
"kind": "entity",
"role": "source",
"evidence": [
{
"start_line": 36,
"end_line": 36
}
],
"assumption": false
},
{
"id": "feed-items",
"label": "feed_items",
"kind": "entity",
"role": "store",
"evidence": [
{
"start_line": 35,
"end_line": 35
}
],
"assumption": false
},
{
"id": "highlights",
"label": "highlights",
"kind": "entity",
"role": "sink",
"evidence": [
{
"start_line": 37,
"end_line": 37
}
],
"assumption": false
},
{
"id": "feed-item-mentions",
"label": "feed_item_mentions",
"kind": "entity",
"role": "sink",
"evidence": [
{
"start_line": 43,
"end_line": 43
}
],
"assumption": false
}
],
"edges": [
{
"id": "users-have-feed-items",
"from": "users",
"to": "feed-items",
"label": "여러 feed_item을 가짐",
"kind": "relationship",
"evidence": [
{
"start_line": 35,
"end_line": 35
}
],
"assumption": false
},
{
"id": "pages-have-feed-items",
"from": "pages",
"to": "feed-items",
"label": "여러 feed_item이 딸림",
"kind": "relationship",
"evidence": [
{
"start_line": 36,
"end_line": 36
}
],
"assumption": false
},
{
"id": "feed-items-have-highlights",
"from": "feed-items",
"to": "highlights",
"label": "여러 highlights를 가짐",
"kind": "relationship",
"evidence": [
{
"start_line": 37,
"end_line": 37
}
],
"assumption": false
},
{
"id": "feed-items-to-mentions",
"from": "feed-items",
"to": "feed-item-mentions",
"label": "피드 아이템을 연결",
"kind": "relationship",
"evidence": [
{
"start_line": 43,
"end_line": 43
}
],
"assumption": false
},
{
"id": "users-to-feed-item-mentions",
"from": "users",
"to": "feed-item-mentions",
"label": "mentioned 사용자로 연결",
"kind": "relationship",
"evidence": [
{
"start_line": 43,
"end_line": 43
}
],
"assumption": false
}
],
"legend": [],
"metadata": {
"rationale": "기준선 관계를 유지하면서 line 43의 feed_item_mentions가 기존 users를 mentioned 사용자 역할로 참조하는 관계만 추가했다."
}
}