136 lines
3.3 KiB
JSON
Executable File
136 lines
3.3 KiB
JSON
Executable File
{
|
|
"version": "1.1",
|
|
"id": "baseline-schema",
|
|
"title": "기준선 스키마의 관계",
|
|
"question": "현재 기준선에서 users, pages, feed_items, highlights는 어떻게 연결되는가?",
|
|
"type": "erd",
|
|
"direction": "LR",
|
|
"audience": [
|
|
"백엔드 개발자"
|
|
],
|
|
"summary": "users와 pages가 feed_items에 연결되고, 각 feed_item은 여러 highlights를 가진다.",
|
|
"alt": "users와 pages에서 feed_items로 모이고 highlights로 이어지는 기준선 관계도.",
|
|
"long_description": "왼쪽의 users와 pages가 각각 중앙의 feed_items에 연결된다. feed_items는 오른쪽의 highlights로 이어진다. 간선은 user와 page 각각에 여러 feed_item이 연결되고, 한 feed_item에 여러 highlight가 연결되는 관계를 나타낸다.",
|
|
"source_context": {
|
|
"document": "docs/n+1liner/final/document.md",
|
|
"document_sha256": "f9e048a68db0ab82078955bf611b06a71a0033539e0c87ff0aa0d620a3126e36",
|
|
"anchor": {
|
|
"kind": "heading",
|
|
"value": "3.1 관계와 스키마",
|
|
"line": 44
|
|
}
|
|
},
|
|
"composition": {
|
|
"profile": "component-flow",
|
|
"diagram_only": true,
|
|
"reference_ids": [
|
|
"payment-event-flow"
|
|
],
|
|
"rationale": "두 시작 엔티티가 feed_items로 모이고 highlights로 이어지는 명시 관계를 왼쪽에서 오른쪽으로 읽는 연결 구조가 가장 직접적이다.",
|
|
"focus_node": "feed-items"
|
|
},
|
|
"groups": [],
|
|
"nodes": [
|
|
{
|
|
"id": "users",
|
|
"label": "users",
|
|
"kind": "entity",
|
|
"role": "source",
|
|
"evidence": [
|
|
{
|
|
"start_line": 46,
|
|
"end_line": 46
|
|
}
|
|
],
|
|
"assumption": false
|
|
},
|
|
{
|
|
"id": "pages",
|
|
"label": "pages",
|
|
"kind": "entity",
|
|
"role": "source",
|
|
"evidence": [
|
|
{
|
|
"start_line": 47,
|
|
"end_line": 47
|
|
}
|
|
],
|
|
"assumption": false
|
|
},
|
|
{
|
|
"id": "feed-items",
|
|
"label": "feed_items",
|
|
"kind": "entity",
|
|
"role": "store",
|
|
"evidence": [
|
|
{
|
|
"start_line": 46,
|
|
"end_line": 46
|
|
}
|
|
],
|
|
"assumption": false
|
|
},
|
|
{
|
|
"id": "highlights",
|
|
"label": "highlights",
|
|
"kind": "entity",
|
|
"role": "sink",
|
|
"evidence": [
|
|
{
|
|
"start_line": 48,
|
|
"end_line": 48
|
|
}
|
|
],
|
|
"assumption": false
|
|
}
|
|
],
|
|
"edges": [
|
|
{
|
|
"id": "users-have-feed-items",
|
|
"from": "users",
|
|
"to": "feed-items",
|
|
"label": "1:N",
|
|
"kind": "relationship",
|
|
"evidence": [
|
|
{
|
|
"start_line": 46,
|
|
"end_line": 46
|
|
}
|
|
],
|
|
"assumption": false
|
|
},
|
|
{
|
|
"id": "pages-have-feed-items",
|
|
"from": "pages",
|
|
"to": "feed-items",
|
|
"label": "1:N",
|
|
"kind": "relationship",
|
|
"evidence": [
|
|
{
|
|
"start_line": 47,
|
|
"end_line": 47
|
|
}
|
|
],
|
|
"assumption": false
|
|
},
|
|
{
|
|
"id": "feed-items-have-highlights",
|
|
"from": "feed-items",
|
|
"to": "highlights",
|
|
"label": "1:N",
|
|
"kind": "relationship",
|
|
"evidence": [
|
|
{
|
|
"start_line": 48,
|
|
"end_line": 48
|
|
}
|
|
],
|
|
"assumption": false
|
|
}
|
|
],
|
|
"legend": [],
|
|
"metadata": {
|
|
"rationale": "기준선에 명시된 세 관계만 같은 엔티티 추상화 수준에서 표현했다."
|
|
}
|
|
}
|