본문으로 이동

지물과 태그 이해

K-OSM Wiki
imported>KOSM Wiki Legacy Import
Imported from the pre-PostgreSQL KOSM Wiki
 
layout: 대표 태그를 별도 문단으로 분리
8번째 줄: 8번째 줄:
==== 노드로 표현하기 ====
==== 노드로 표현하기 ====
노드는 위치 하나를 나타내는 점입니다. 출입구, 음식점, 버스 정류소, 가로등, 벤치, 나무처럼 특정 위치를 표시하는 지물에 사용합니다. 자세한 요소 구조는 [[노드]]에서 확인할 수 있습니다.
노드는 위치 하나를 나타내는 점입니다. 출입구, 음식점, 버스 정류소, 가로등, 벤치, 나무처럼 특정 위치를 표시하는 지물에 사용합니다. 자세한 요소 구조는 [[노드]]에서 확인할 수 있습니다.
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="건물 출입구">[[Key: entrance|entrance=*]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="공공·생활 편의시설=카페">[[Key: amenity|amenity=cafe]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=버스 정류소">[[Key: highway|highway=bus_stop]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=가로등">[[Key: highway|highway=street_lamp]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="자연 지물=나무 한 그루">[[Key: natural|natural=tree]]</code>
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="건물 출입구">[[Key: entrance|entrance=*]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="공공·생활 편의시설=카페">[[Key: amenity|amenity=cafe]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=버스 정류소">[[Key: highway|highway=bus_stop]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=가로등">[[Key: highway|highway=street_lamp]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="자연 지물=나무 한 그루">[[Key: natural|natural=tree]]</code>


==== 길로 표현하기 ====
==== 길로 표현하기 ====
길은 노드를 순서대로 연결한 선입니다. 도로·보도·철도·하천처럼 선 자체가 중요한 지물에 사용합니다. 길의 구조와 방향은 [[길]]에서 확인할 수 있습니다.
길은 노드를 순서대로 연결한 선입니다. 도로·보도·철도·하천처럼 선 자체가 중요한 지물에 사용합니다. 길의 구조와 방향은 [[길]]에서 확인할 수 있습니다.
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=주거 도로">[[Key: highway|highway=residential]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="철도=일반 철도 선로">[[Key: railway|railway=rail]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="하천·수로=강">[[Key: waterway|waterway=river]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="장벽·통제 시설=울타리">[[Key: barrier|barrier=fence]]</code>
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="도로·보행로=주거 도로">[[Key: highway|highway=residential]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="철도=일반 철도 선로">[[Key: railway|railway=rail]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="하천·수로=강">[[Key: waterway|waterway=river]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="장벽·통제 시설=울타리">[[Key: barrier|barrier=fence]]</code>


==== 면(Area·폴리곤)으로 표현하기 ====
==== 면(Area·폴리곤)으로 표현하기 ====
면은 공간을 차지하는 지물입니다. 일반적으로 닫힌 길에 면을 나타내는 태그를 붙이거나, 구멍이 있거나 경계가 복잡한 경우 관계로 구성합니다. KOSM에서는 [https://wiki.openstreetmap.org/wiki/Area OSM의 Area 설명]을 참고해 면으로 해석되는지 확인합니다.
면은 공간을 차지하는 지물입니다. 일반적으로 닫힌 길에 면을 나타내는 태그를 붙이거나, 구멍이 있거나 경계가 복잡한 경우 관계로 구성합니다. KOSM에서는 [https://wiki.openstreetmap.org/wiki/Area OSM의 Area 설명]을 참고해 면으로 해석되는지 확인합니다.
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="건물=종류를 구분하지 않은 건물">[[Key: building|building=yes]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="토지 이용=주거 지역">[[Key: landuse|landuse=residential]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="자연 지물=수역">[[Key: natural|natural=water]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="공공·생활 편의시설=주차장">[[Key: amenity|amenity=parking]]</code>
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="건물=종류를 구분하지 않은 건물">[[Key: building|building=yes]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="토지 이용=주거 지역">[[Key: landuse|landuse=residential]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="자연 지물=수역">[[Key: natural|natural=water]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="공공·생활 편의시설=주차장">[[Key: amenity|amenity=parking]]</code>


==== 관계로 표현하기 ====
==== 관계로 표현하기 ====
관계는 여러 노드·길·관계를 하나의 의미로 묶습니다. 버스 노선, 통행 제한, 구멍이 있는 복합 면처럼 하나의 요소만으로 설명하기 어려운 경우 사용합니다. 자세한 구조는 [[관계]]에서 확인할 수 있습니다.
관계는 여러 노드·길·관계를 하나의 의미로 묶습니다. 버스 노선, 통행 제한, 구멍이 있는 복합 면처럼 하나의 요소만으로 설명하기 어려운 경우 사용합니다. 자세한 구조는 [[관계]]에서 확인할 수 있습니다.
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=노선 관계">[[Key: type|type=route]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=여러 외곽·내곽으로 구성된 면 관계">[[Key: type|type=multipolygon]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=회전·통행 제한 관계">[[Key: type|type=restriction]]</code>
대표 태그: <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=노선 관계">[[Key: type|type=route]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=여러 외곽·내곽으로 구성된 면 관계">[[Key: type|type=multipolygon]]</code>, <code class="kosm-tag-reference kosm-tag-reference--link" title="관계 유형=회전·통행 제한 관계">[[Key: type|type=restriction]]</code>


158번째 줄: 162번째 줄:


[[분류:KOSM 태그 구성]]
[[분류:KOSM 태그 구성]]

2026년 8월 30일 (일) 20:19 판

KOSM에서 사용하는 지도 태그를 설명하는 문서입니다. KOSM은 한국형 지도이며, OpenStreetMap(OSM)의 데이터 구조와 태그 문법을 대부분 따릅니다.

이 문서는 태그를 단순히 노드·길·면으로 나누지 않습니다. 같은 태그가 여러 표현 형태에서 사용될 수 있기 때문입니다. 먼저 표현 형태를 이해하고, 실제 태그는 공통 태그와 지물 종류를 기준으로 찾아보면 됩니다.

1. 태그와 표현 형태 이해

태그는 지물이 무엇인지 설명하고, 노드·길·면·관계는 그 지물을 지도에 어떻게 표현할지 결정합니다.

노드로 표현하기

노드는 위치 하나를 나타내는 점입니다. 출입구, 음식점, 버스 정류소, 가로등, 벤치, 나무처럼 특정 위치를 표시하는 지물에 사용합니다. 자세한 요소 구조는 노드에서 확인할 수 있습니다.

대표 태그: entrance=*, amenity=cafe, highway=bus_stop, highway=street_lamp, natural=tree

길로 표현하기

길은 노드를 순서대로 연결한 선입니다. 도로·보도·철도·하천처럼 선 자체가 중요한 지물에 사용합니다. 길의 구조와 방향은 에서 확인할 수 있습니다.

대표 태그: highway=residential, railway=rail, waterway=river, barrier=fence

면(Area·폴리곤)으로 표현하기

면은 공간을 차지하는 지물입니다. 일반적으로 닫힌 길에 면을 나타내는 태그를 붙이거나, 구멍이 있거나 경계가 복잡한 경우 관계로 구성합니다. KOSM에서는 OSM의 Area 설명을 참고해 면으로 해석되는지 확인합니다.

대표 태그: building=yes, landuse=residential, natural=water, amenity=parking

관계로 표현하기

관계는 여러 노드·길·관계를 하나의 의미로 묶습니다. 버스 노선, 통행 제한, 구멍이 있는 복합 면처럼 하나의 요소만으로 설명하기 어려운 경우 사용합니다. 자세한 구조는 관계에서 확인할 수 있습니다.

대표 태그: type=route, type=multipolygon, type=restriction

2. 태그의 역할

OSM의 태그는 자유로운 Key=Value 형식이지만, 모든 Key가 같은 역할을 하지는 않습니다. 어떤 태그는 객체가 무엇인지 정의하고, 어떤 태그는 이미 정의된 객체에 이름·운영시간·층수 같은 정보를 덧붙입니다. 자세한 기본 원리는 OSM Wiki의 태그 구조에서 확인할 수 있습니다.

KOSM에서는 태그를 다음 다섯 단계로 구분합니다.

  1. 지물 핵심 Key — 객체가 무엇인지 정의합니다.
  2. 공통 속성 Key — 여러 종류의 객체에 폭넓게 정보를 추가합니다.
  3. 조건부 공통 Key — 여러 분야에서 쓰이지만 적용 조건이 있습니다.
  4. 지물 종속 Key — 특정 지물 핵심 Key가 있어야 의미가 분명해집니다.
  5. 관계·구조 Key — 여러 요소를 묶거나 데이터 구조를 정의합니다.

이 구분은 태그를 입력하는 순서이기도 합니다. 먼저 객체의 표현 형태와 지물 핵심 Key를 정한 뒤, 필요한 속성만 단계적으로 추가합니다.

2.1 지물 핵심 Key

지물 핵심 Key는 “이 객체가 무엇인가?”를 정의합니다. OSM Wiki의 Top-level tag 또는 Feature tag에 해당하며, 독립된 지도 객체는 일반적으로 하나 이상의 지물 핵심 태그를 가집니다.

분야 주요 Key 정의하는 지물 대표 태그
도로·교통 highway, railway, public_transport 도로·보행로·철도·정류장 highway=residential, railway=rail
시설·장소 amenity, shop, office, healthcare 생활시설·상점·사무실·의료시설 amenity=school, shop=convenience
관광·여가 tourism, leisure, historic 관광시설·공원·체육·역사 지물 tourism=hotel, leisure=park
건물·인공물 building, man_made, barrier, power 건물·인공 구조물·장벽·전력시설 building=apartments, barrier=fence
토지·자연·수계 landuse, natural, waterway 토지 이용·자연 지물·하천과 수로 landuse=residential, natural=tree
장소·경계 place, boundary 도시·마을·행정구역·보호구역 place=city, boundary=administrative

한 객체에 지물 핵심 태그가 둘 이상 붙을 수도 있습니다. 예를 들어 학교 건물 하나가 학교 시설 전체를 함께 나타낸다면 building=schoolamenity=school이 함께 사용될 수 있습니다. 단, 모든 태그가 같은 실제 객체를 모순 없이 설명해야 합니다.

2.2 공통 속성 Key

공통 속성 Key는 객체의 유형을 바꾸지 않고 이름·식별자·운영 주체·물리 정보 등을 보충합니다. 여기서 ‘공통’은 모든 객체에 반드시 입력한다는 뜻이 아니라, 여러 종류의 지물에 반복해서 사용할 수 있다는 뜻입니다.

정보 종류 주요 Key 설명
이름 name, official_name, short_name, alt_name, name:en 대표 이름·공식 명칭·약칭·다른 이름·언어별 이름
식별 ref, wikidata, wikipedia 공식 참조번호와 외부 지식 항목 연결
운영·관리 operator, owner, brand, network 운영자·소유자·브랜드·소속 망
연락 website, phone, email 공식 웹사이트와 연락처
물리 정보 height, width, ele, material, colour 높이·폭·해발고도·재료·색상
설명·시점 description, note, start_date, check_date 보충 설명·주의사항·시작 시기·확인 날짜

예를 들어 name=광명역은 이름을 기록할 뿐 철도역이라는 유형을 만들지 않습니다. 역의 유형은 railway=station 같은 지물 핵심 태그로 먼저 정의해야 합니다.

2.3 조건부 공통 Key

조건부 공통 Key는 여러 분야에서 사용할 수 있지만, 실제 객체에 해당 조건이 있을 때만 입력합니다. 겉보기에는 범용적이어도 모든 지물에 무조건 적용하지 않습니다.

Key 사용할 수 있는 대상 확인할 점
addr:* 주소가 있는 건물·시설·주소 노드 주소를 가진 객체인지 확인
opening_hours 운영·개방 시간이 있는 시설 건물 자체와 내부 시설의 운영시간을 구분
access 출입·통행 규칙이 있는 길·시설·구역 물리적 접근 가능성과 이용 규칙을 구분
wheelchair 접근성을 확인할 수 있는 시설·교통 지물 실제 출입과 이용 가능 여부를 확인
fee 이용료가 있는 시설·도로·주차장 상품 가격을 기록하는 태그가 아님
surface, lit 도로·광장·주차장 등 실제 표면과 조명 제공 여부가 의미 있는지 확인
level 건물·역사·복합시설 내부 지물 객체가 위치한 층을 기록
layer 서로 교차하거나 겹치는 길·면 층수·높이·고도가 아닌 상대적 위아래 순서

level=1은 시설이 건물의 어느 층에 있는지 나타냅니다. 반면 layer=1은 교량과 터널처럼 교차하는 지물 사이의 상대적인 위아래 관계를 나타냅니다. 자세한 차이는 OSM Wiki의 level=*layer=*에서 확인합니다.

2.4 지물 종속 Key

지물 종속 Key는 특정 지물 핵심 태그와 함께 사용할 때 의미가 분명해집니다. 이 태그만 단독으로 입력하기보다 어떤 지물의 세부 속성인지 먼저 확인합니다.

대상 종속 Key 함께 필요한 지물 핵심 Key
건물 building:levels, building:levels:underground, building:material, roof:shape building=* 또는 building:part=*
도로 lanes, maxspeed, oneway, sidewalk, turn:lanes 주로 highway=*
철도 gauge, electrified, tracks, usage railway=*
행정경계 admin_level boundary=administrative
식생 species, genus, leaf_type, leaf_cycle natural=tree, natural=shrub
출입구 entrance=main, entrance=service, entrance=emergency 건물·시설 경계의 출입구 노드

예를 들어 building:levels=15는 건물의 지상층 수이므로 building=* 또는 building:part=*가 있는 객체에 사용합니다. OSM Wiki의 building:levels=*처럼 각 종속 Key 문서에는 함께 필요한 태그와 적용 대상이 정리되어 있습니다.

2.5 관계·구조 Key

관계·구조 Key는 일반 속성을 추가하기보다 여러 요소가 어떤 방식으로 결합되는지 설명합니다.

태그 조합 구조의 의미 주요 구성원 역할
type=route + route=* 버스·철도·도로·자전거 노선 stop, platform, route
type=multipolygon 여러 길로 구성되거나 구멍이 있는 면 outer, inner
type=boundary + boundary=* 행정구역·보호구역 등의 경계 outer, inner, admin_centre
type=restriction + restriction=* 회전·통행 제한 from, via, to

outer, inner, from, via, to는 일반 태그가 아니라 관계 구성원에게 부여하는 역할(role)입니다. 관계 자체의 태그와 구성원의 역할을 구분해야 합니다.

KOSM은 대부분 OSM 태그를 따르며, 한국형 표현을 위해 별도로 정의한 항목은 KOSM 태그로 구분합니다. 태그별 출처와 배지의 의미, 같은 Key가 문맥에 따라 달라지는 사례는 KOSM Feature Key Reference에서 확인합니다.

3. 태그를 읽고 입력하는 순서

  1. 실제 지물을 노드·길·면·관계 중 어떤 형태로 표현할지 결정합니다.
  2. 지물 핵심 Key로 객체가 무엇인지 정의합니다.
  3. 이름·참조번호·운영자 같은 공통 속성을 추가합니다.
  4. 주소·운영시간·접근성처럼 실제로 확인된 조건부 속성을 추가합니다.
  5. 건물 층수·도로 차로 수처럼 해당 지물에 종속되는 세부 정보를 추가합니다.
  6. 여러 요소를 함께 묶어야 할 때만 관계와 구성원 역할을 확인합니다.

예를 들어 편의점 노드는 shop=convenience로 유형을 정하고, name=우리동네 편의점opening_hours=24/7을 필요한 속성으로 추가합니다. 공동주택 면은 building=apartments로 유형을 정한 뒤 name=KOSM 아파트, building:levels=15와 주소 태그를 추가할 수 있습니다.

4. 더 많은 Key 찾기

이 페이지는 태그의 구조와 역할을 이해하는 데 필요한 주요 Key만 다룹니다. KOSM에서 사용 중인 더 많은 Key와 Value 목록은 KOSM Feature Key Reference에서 분야별로 확인할 수 있습니다.

이 문서에 없는 OSM 태그와 최신 사용법은 OSM Map Features와 각 Key의 OSM Wiki 문서를 참고합니다.