에코맵

에코맵이란

에코맵은 중심에 한 사람 또는 가족을 놓고, 그 주변에 확대 가족, 학교, 교회, 클리닉, 직장, 지원 단체 등 외부 시스템의 네트워크를 배열하는 단일 페이지 도식입니다. 각 연결선은 관계의 (강함, 취약함, 스트레스 유발)과 방향(누가 주고 누가 받는지)을 기록합니다. 사회복지사, 학교 상담사, 케이스 매니저, 지역사회 건강 간호사들은 에코맵을 사용하여 클라이언트가 어디에 기반이 있고 어디서 안전망이 취약한지를 한눈에 파악합니다.

Schematex는 Hartman (1978) 에코맵 모델 — 표기법을 도입한 원본 Social Casework 논문 — 을 따르며, 현대 임상 사회복지 실천의 관례로 확장되었습니다. 배경은 Wikipedia: Ecomap을 참조하십시오. 이 페이지는 파서가 현재 허용하는 내용을 문서화합니다.

ecomap·§ Hartman 1978
↘ preview
100%
Ecomap Ecomap diagram with 7 external systems Nguyen Family IRC Office Lincoln Elementary Community Clinic Ms. Patel Vietnamese Temple Sponsor Family Warehouse Job active case vaccinations weekly anchor housing host new, part-time SYSTEMS Community Cultural Education Government Health Mental Health Work TIES Strong
UTF-8 · LF · 16 lines · 737 chars✓ parsed·4.3 ms·13.0 KB SVG

1. 첫 번째 에코맵

가장 작고 유용한 에코맵: 하나의 중심과 세 개의 외부 시스템.

ecomap·§ Hartman 1978
↘ preview
100%
Ecomap Ecomap diagram with 3 external systems Maria Mother Tech Corp Dr. Patel weekly SYSTEMS Family Mental Health Work TIES Strong
UTF-8 · LF · 8 lines · 246 chars✓ parsed·0.8 ms·8.1 KB SVG

네 가지 규칙으로 사용의 80%를 다룰 수 있습니다.

  1. ecomap 키워드로 시작하고, 선택적으로 따옴표로 묶인 제목을 추가합니다.
  2. 중심을 독립된 줄에 선언합니다: center: id [label: "…"]. 다이어그램당 정확히 하나의 중심.
  3. 각 외부 시스템을 독립된 줄에 선언합니다: id [label: "…", category: …].
  4. 선언된 두 ID를 연결 연산자로 연결합니다 — ===(강함), ---(보통), <->(상호), 등. 전체 표는 §3을 참조하십시오. 후미의 [label: "…"]는 엣지 레이블을 추가합니다.

주석은 #, //, 또는 Mermaid 스타일 %%로 시작하는 독립된 줄에 있어야 합니다. 인라인 후미 주석은 파서를 중단시킵니다.


2. 중심과 외부 시스템

모든 에코맵에는 하나의 중심과 임의 수의 외부 시스템이 있습니다. 두 가지 모두 동일한 id [attrs] 문법을 사용합니다. 유일한 차이는 center: 접두사입니다.

ID 규칙. [a-zA-Z][a-zA-Z0-9_-]*와 일치해야 합니다. ID는 대소문자를 구분하지 않습니다. 원본 토큰이 기본 레이블로 유지됩니다.

파서가 오늘 허용하는 속성:

속성효과
label:"…"임의 따옴표 문자열표시 레이블 재정의
category:…§2.1 참조시스템 노드의 색상 / 그룹화
size:…small, medium, large노드 크기
importance:…major, moderate, minor시각적 비중
sector:…top, right, bottom, left시스템이 중심의 어느 쪽에 위치하는지 힌트
age:N예: age:34사람 유형 중심 내부에 표시되는 나이
male / female / unknown플래그사람 유형 중심의 성별

2.1 시스템 카테고리

카테고리는 외부 시스템을 속하는 생활 영역으로 색상 코드를 지정합니다. 파서는 임의의 문자열을 허용합니다 — 다음은 렌더러가 테마 팔레트를 가진 값들입니다.

카테고리일반적인 예시
family확대 가족, 시댁/처가, 사촌
friends친구, 이웃
work고용주, 동료
education학교, 대학, 훈련 프로그램
health주치의, 전문의, 병원
mental-health상담사, 정신과의사, 지원 그룹
religion교회, 사원, 영적 공동체
recreation스포츠, 취미, 클럽
legal변호사, 보호관찰, 법원
government사회 서비스, 주거, 이민
financial은행, 혜택, 재정 지원
community지역 단체, 후원자
cultural문화/민족 조직
substance회복 프로그램 또는 부정적인 경우 활성 사용 소스
technology온라인 커뮤니티, 지원 포럼
pet반려동물, 도우미 동물
ecomap·§ Hartman 1978
↘ preview
100%
Ecomap Ecomap diagram with 5 external systems Marcus, age 15 Mother Father (divorced) East High School Soccer Coach Ms. Chen EOW weekends mentor weekly SYSTEMS Community Education Family Mental Health TIES Strong
UTF-8 · LF · 12 lines · 446 chars✓ parsed·1.0 ms·10.6 KB SVG

3. 연결

연결은 한 줄입니다: fromId OP toId, 선택적으로 [label: "…"]가 뒤따릅니다. 두 ID 모두 이미 선언되어 있어야 합니다(중심도 포함).

3.1 관계 품질 연산자

연산자유형의미
===강함친밀하고, 지지적이며, 고빈도
==보통긍정적, 중간 수준의 관여
---보통중립 / 평균
- -약함취약하고, 불안정하며, 초기 단계
~~~스트레스스트레스를 주는 관계
~=~스트레스-강함친밀하면서 동시에 스트레스
~x~갈등적활성 갈등
-/-단절끊어짐, 소원함, 차단

3.2 에너지 흐름 연산자

강함 또는 보통 선에 화살표 방향을 추가합니다.

연산자의미
-->일방향: 에너지가 중심에서 시스템으로 흐름
<--일방향: 에너지가 시스템에서 중심으로 흐름
<->상호 / 양방향
===>강한 일방향 유출 (소모)
<===강한 일방향 유입 (영양 공급)
<=>강한 상호
==>보통 일방향 유출
<==보통 일방향 유입

파서는 방향을 정규화하여 화살표가 중심에 대해 상대적으로 읽힙니다. family === resettlementresettlement === family를 작성하면 동일한 다이어그램이 생성됩니다. clinic --> familyfamily <-- clinic도 마찬가지로 클리닉에서 가족으로 향하는 동일한 화살표를 생성합니다.

ecomap·§ Hartman 1978
↘ preview
100%
Ecomap Ecomap diagram with 4 external systems Rosa Mom Ex AA Group Warehouse daily calls custody disputes sponsor support unstable hours SYSTEMS Family Substance Work TIES Strong Moderate Weak Conflictual
UTF-8 · LF · 10 lines · 329 chars✓ parsed·1.0 ms·10.4 KB SVG

3.3 엣지 레이블

후미의 [label: "…"]는 연결선이 허용하는 유일한 속성입니다. 일정, 성격, 또는 짧은 메모를 여기에 기록합니다.

family === temple [label: "weekly service"]
clinic --> family [label: "vaccinations"]
caseworker <-> family [label: "every Tuesday"]

4. 레이블 및 주석

  • 제목: ecomap "Nguyen Family" — 첫 줄에만.
  • 노드 레이블 재정의: family [label: "The Nguyens"].
  • 엣지 레이블: 연결선의 후미 [label: "…"].
  • 모드 접미사: ecomap:strengths "Smith family"가 허용됩니다. 접미사는 metadata.mode에 저장되며, 현재 렌더러는 이를 무시합니다.
  • 주석: 줄 시작에 #, //, 또는 %%(앞의 공백 이후). 인라인 후미 주석은 지원되지 않습니다.
ecomap "Marcus Intake"
  # caseworker's notes — fine
  // also fine
  %% Mermaid-style comments are fine
  mom [category: family]   # ← 이 후미 주석은 파서를 중단시킴

5. 예약어 및 이스케이프

줄 시작 예약어: ecomap, center:.

줄 내부 예약 연산자 토큰 — ID에서 이 시퀀스 사용을 피하십시오: ===, ==, ---, - -, ~~~, ~=~, ~x~, -/-, 및 §3.2의 방향 변형.

공백이 있는 문자열은 큰따옴표로 묶어야 합니다: 제목 및 모든 레이블. 작은따옴표와 백틱은 인식되지 않습니다.


6. 흔한 실수

실제 파서 오류, 발생 원인, 해결 방법.

작성한 내용파서 오류수정 방법
family -- schoolUnexpected: family -- school에코맵은 ===/---/<-> 등을 사용합니다. --는 genogram/pedigree 연산자입니다
선언되지 않은 school을 사용한 family === school레이블/카테고리 없이 빈 school 노드를 자동 생성시스템을 연결선보다 위에 선언하십시오
center:가 없음렌더링되지만 시각적 중심 앵커가 없음모든 에코맵에는 정확히 하나의 center: 줄이 필요합니다
두 개의 center:첫 번째만 중심으로 처리되고 두 번째는 일반 시스템이 됨하나만 선택하십시오
family==school (공백 없음)Unexpected: family==school연산자 양쪽에 공백이 필요합니다
family === school [weekly]베어 토큰 weekly가 속성 플래그로 파싱되어 레이블이 표시되지 않음[label: "weekly"] 사용
family === school # daily후미 #이 줄의 일부로 소비됨주석을 위쪽 줄로 이동

7. 문법 (EBNF)

document       = header (blank | comment | center | system | connection)*

header         = "ecomap" ( ":" mode )? ( WS quoted-string )? NEWLINE
mode           = [A-Za-z] [A-Za-z0-9_-]*
quoted-string  = '"' any-char-but-quote* '"'

center         = "center:" WS id ( "[" attrs "]" )? NEWLINE
system         = id ( "[" attrs "]" )? NEWLINE
connection     = id WS op WS id ( WS "[" "label:" quoted-string "]" )? NEWLINE

op             = "===" | "==" | "---" | "- -" | "~~~" | "~=~" | "~x~" | "-/-"
               | "===>" | "<===" | "<=>" | "==>" | "<=="
               | "-->" | "<--" | "<->"

id             = [a-zA-Z] [a-zA-Z0-9_-]*
attrs          = attr ("," attr)*
attr           = "label" ":" quoted-string
               | "category" ":" category
               | "size" ":" ("small" | "medium" | "large")
               | "importance" ":" ("major" | "moderate" | "minor")
               | "sector" ":" ("top" | "right" | "bottom" | "left")
               | "age" ":" digits
               | "male" | "female" | "unknown"
               | key ":" value                  // 커스텀, 메타데이터로 저장

category       = "family" | "friends" | "work" | "education" | "health"
               | "mental-health" | "religion" | "recreation" | "legal"
               | "government" | "financial" | "community" | "cultural"
               | "substance" | "technology" | "pet" | "other"

comment        = ( "#" | "//" | "%%" ) any NEWLINE

권위 있는 소스: src/diagrams/ecomap/parser.ts. 파서와 다를 경우 파서가 우선합니다 — 이슈를 열어주십시오.


8. 표준 준수

Schematex 에코맵은 핵심 표기법에 대해 Hartman (1978), Diagrammatic Assessment of Family Relationships를 따릅니다: 외부 시스템으로 둘러싸인 경계 있는 중심, 품질과 방향성을 인코딩하는 연결선. 카테고리 팔레트와 확장된 연산자 세트(스트레스-강함, 상호 화살표)는 현대 임상 사회복지 및 간호 연구의 관례를 따릅니다.

현재 구현된 항목:

  • ✅ 중심 + 외부 시스템 방사형 구조
  • ✅ 8가지 품질 연산자 (강함 / 보통 / 보통 / 약함 / 스트레스 / 스트레스-강함 / 갈등적 / 단절)
  • ✅ 8가지 방향 연산자 (세 가지 강도에서 일방향 및 상호)
  • ✅ 카테고리 색상 코딩 (17개 카테고리)
  • ✅ 엣지 레이블
  • ⏳ 중심으로서의 내장 미니 genogram (§10 참조)
  • ⏳ 현재 4가지 기본 방향 이외의 섹터 기반 레이아웃 힌트

참고 문헌:

  • Hartman, A. (1978). Diagrammatic assessment of family relationships. Social Casework, 59(8), 465–476.
  • Ray, R.A. & Street, A.F. (2005). Ecomapping: An innovative research tool for nurses. Journal of Advanced Nursing, 50(5), 545–552.
  • Rempel, G.R., Neufeld, A., & Kushner, K.E. (2007). Interactive use of genograms and ecomaps in family caregiving research. Journal of Family Nursing, 13(4), 403–419.

9. 관련 예시

예시 갤러리에서 바로 사용할 수 있는 시나리오:

ecomap·§ Hartman 1978
Ecomap Ecomap diagram with 9 external systems Nguyen Family IRC Office Lincoln Elementary Adult ESL Class Community Clinic Ms. Patel Vietnamese Temple Sponsor Family Warehouse Job Cousins (CA) active case twice weekly vaccinations weekly anchor housing host new, part-time phone support SYSTEMS Community Cultural Education Family Government Health Mental Health Work TIES Strong Moderate
Refugee family resettlement
Ecomap of a refugee family's support network — IRC office, school, clinic, and sponsor family — categorized by resource type per Hartman 1978.
healthcare & social
ecomap·§ Hartman 1978
Ecomap Ecomap diagram with 6 external systems Marcus Mother Father (divorced) East High School Soccer Coach Soccer team Ms. Chen primary caregiver EOW weekends mentor weekly SYSTEMS Community Education Family Mental Health TIES Strong
Teen client intake
Quick intake ecomap for a 15-year-old showing family, school, soccer peers, and therapist — drawn in under five minutes during a counseling session.
healthcare & social
ecomap·§ Hartman 1978
Ecomap Ecomap diagram with 9 external systems James Age 28 AA Group Bill (Sponsor) Warehouse Job Mom Ex-wife Children (2) Old Friends P.O. Johnson CBT Therapist new, probationary supportive custody conflict supervised visits trying to cut off weekly SYSTEMS Family Legal Mental Health Substance Work TIES Strong Moderate Weak Stressful Broken
Substance abuse recovery
Ecomap charting a client's recovery support network — AA group, family, probation, and therapist — with relationship strength and directional connections.
healthcare & social

10. 로드맵

계획됨 — 아직 파싱 불가. 오늘 생성된 DSL에서 이것들을 사용하지 마십시오; 파서가 거부하거나 자동으로 무시합니다.

  • 중심으로서의 내장 미니 genogramcenter: 노드 안에 전체 가족 블록을 선언하여(들여쓰기된 커플과 자녀) 중심이 단일 형태가 아닌 작은 genogram이 되도록. 파서는 현재 center: 아래의 들여쓰기된 내용을 건너뛴 줄로 읽습니다.
  • 카테고리별 기본 화살표 의미 — 예: health 시스템(들어옴) vs work 시스템(나감)을 위한 자동 방향 화살표.
  • 복수 중심 — 일부 시스템을 공유하는 두 클라이언트의 에코맵.
  • 커스텀 색상 재정의 — 시스템 또는 연결에 [color: "#…"].

더 빨리 필요하다면 GitHub 이슈에서 추적하십시오.

Found this useful?

Schematex is free, fully open source, and zero-dependency. A star helps other developers discover it.