자주 솔루션에 대한 요구사항으로 표준을 준수하는가… 라는 대응 항목 중 gml, kml, wms, wfs 이 있습니다. 새로운 gis 데이터 서버 개발에 이러한 표준 항목을 준수하기 위한 준비로 해당 항목에 대해 개략적으로 파악할 목적으로 작성한 내용입니다.
GML (Geography Markup Language)
http://www.opengeospatial.org/standards/gml
GML은 지리적 특성을 표현하기 위한 XML 문법입니다. GML은 인터넷에서 지리 데이터 송수신을 위한 개방된 교환 포맷임과 동시에 지리데이터 시스템을 위한 모델링 언어로써 사용됩니다. 문법에 기반한 대부분의 XML과 같이 두 부분으로 나눠져 있습니다.
- 문서의 설명 부분
- 실제 데이터 부분
GML 문서는 GML 스키마를 사용하여 기술됩니다. 이는 사용자와 개발자에게 포인트, 라인 그리고 폴리곤을 포함하는 일반적인 지리데이터셋을 설명할 수 있도록 합니다. 그러나 GML의 개발자들은 GML의 확장을 특화시키는 커뮤니티 지향적인 어플리케이션 스키마를 정의하기 위한 커뮤니티 작업을 상상합니다. 어플리케이션 스키마를 사용하여 사용자는 일반적인 포인트, 라인, 폴리곤을 길, 고속도로 그리고 다리로써 참조할 수 있습니다. 만약 커뮤니티의 모든 사람이 동일한 스키마를 사용하는 것에 대해 동의한다면 데이터를 쉽게 교환할 수 있으며 도로에 대한 라인을 표시할때 도로로 표시할 수 있게 됩니다.
KML(Keyhole Markup Language)
http://earth.google.com/intl/ko/userguide/v4/ug_kml.html
http://en.wikipedia.org/wiki/Keyhole_Markup_Language
KML은 현재 또는 미래의 웹 기반의 2차원과 3차원 브라우저에서 지리 데이터의 주기와 가시화를 위한 XML 기반의 스키마입니다. KML은 Google 어스, Google 지도 및 기타 응용 프로그램에 표시하기 위해 점, 선, 이미지, 다각형 및 모델과 같은 지형 기능을 모델링하고 저장하기 위한 XML 문법 및 파일 형식입니다. KML을 사용하여 Google 어스 및 Google 지도의 다른 사용자와 장소 및 정보를 공유할 수 있습니다. KML은 구글어스에서 사용하기 위해 개발되어졌으며 원래 이름은 Keyhole Earth Viewer였습니다. Keyhole 사에서 만들어졌으며 이 회사는 2004년에 구글로 인수되었습니다. 현재 KML은 오픈 GIS 컨소시엄의 국제 표준입니다. KML을 표현하고 편집할 수 있는 첫번째 프로그램은 구글어스이며 KML을 지원하는 툴이 다양하게 제공되고 있습니다.
참고 : KMZ 파일은 KML 파일의 압축된 버전입니다.
WMS(Web Map Service)
http://en.wikipedia.org/wiki/Web_Map_Service
WMS는 GIS 데이터베이스의 데이터를 사용하는 지도 서버로부터 생성되어진 지오레퍼런싱된 지도 이미지를 서비스하기 위한 표준 프로토콜입니다. 스펙은 1999년에 오픈 GIS 컨소시엄에서 처음 개발어 공개되었습니다.
WMS는 다양한 요청 타입을 가지고 있으며 WMS 서버는 다음 2가지 요청 타입을 제공해야 합니다.
- GetCapabilities : WMS에 대한 인자값과 이용가능한 지도 레이어 목록 반환
- GetMap : 해당 인자에 대한 지도 이미지
다음은 WMS 서버에서 옵션으로 제공하는 요청 타입입니다.
- GetFeatureInfo
- DescribeLayer
- GetLegendGraphic
WMS는 클라이언트가 인터넷으로부터 접근할 수 있는 지도와 GIS 데이터 포맷을 폭넓게 지원합니다. WMS를 지원하는 주요 상업적인 GIS 및 맵핑 소프트웨어는 다음과 같습니다.
- Bentley Systems’s GIS products
- ESRI’s ArcGIS products
- MapInfo Professional
- GeoMedia
- Manifold System
- Google Earth
또한 WMS를 지원하는 오픈소스 제품군은 다음과 같습니다.
- Quantum GIS
- uDig
- OpenJUMP
- MapGuide Open Source
- NASA World Wind
- GRASS GIS
- gvSIG
- OpenLayers
WFS(Web Feature Service)
http://en.wikipedia.org/wiki/Web_Feature_Service
WFS는 플랫폼에 독립적인 호출을 이용하여 웹에서 지리데이터에 대한 피쳐(feature)를 요청할 수 있는 인터페이스를 제공합니다. WMS가 단순히 지도 이미지만을 서비스하는데 반해 WFS는 공간 분석 등과 같은 연산을 위해 필요한 데이터를 서비스 합니다.
WFS의 서비스 기능은 다음과 같습니다.
- 공간 또는 비공간 조건에 기반한 피쳐(feature)의 쿼리
- 새로운 피쳐 생성
- 피쳐 삭제
- 피쳐 업데이트
가장 기본적인 WFS 서버는 반드시 공간 또는 비공간 조건에 기반한 피쳐의 쿼리 기능을 지원해야 하며, 트랜젝션 WFS(WFS-T)는 피쳐의 생성과 삭제 그리고 업데이트를 제공합니다.