Open GIS Consortium Inc
Total Page:16
File Type:pdf, Size:1020Kb
Open GIS Consortium Inc. OpenGIS Web Map Server Cookbook April 28, 2003 Editor: Kris Kolodziej OGC Document Number: 03-050 Version: 1.0.0 Stage: Draft Language: English OpenGIS Web Map Server Cookbook Open GIS Consortium Inc. Copyright Notice © 2003 Open GIS Consortium, Inc. All Rights Reserved. OpenGIS® is a registered trademark of the Open GIS Consortium, Inc. and may only be used by permission. This Open GIS Consortium, Inc. (OGC) document is a draft document and is copyright-protected by OGC. While the reproduction of drafts in any form for use by participants in the OGC standards development process is permitted without prior permission from OGC, neither this document nor any extract from it may be reproduced, stored, or transmitted in any form for any other purpose without prior written permission from OGC. Recipients of this document are invited to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation. Note: This document is not an OGC Standard. Internal and external documents cannot refer to it as such. Drafts are distributed for review and comment and are subject to change without notice. Revision History Version Date Author/Editor Comments 1.0.0 April 14, 2003 Kris Kolodziej Document Contact Information If you have questions or comments regarding this document, you can contact: Name Organization Contact Information Greg Buehler OGC [email protected] +1 (812) 334-0601 Future Work Version: 1.0.0 ii http://www.opengis.org OpenGIS Web Map Server Cookbook Open GIS Consortium Inc. Table of Contents Preface .....................................................................................................................................................................................................................1 Submitting Organizations (The Contributors).......................................................................................................................................................1 Organization of the Cookbook .............................................................................................................................................................................2 Acknowledgments................................................................................................................................................................................................2 Revision History ...................................................................................................................................................................................................3 1. WMS Implementation: Overview .......................................................................................................................................................................4 1.1. Introduction: Web Mapping & Interoperability...............................................................................................................................................4 1.2. Web Mapping Compliance: The WMS Service Interface..............................................................................................................................7 1.2.1. The WMS Interface Implementation Specification as an API ...............................................................................................................8 1.2.2. The WMS Interface Operations ............................................................................................................................................................9 1.2.3. WMS SLD Enabled Operations...........................................................................................................................................................10 1.2.4. Supported Distributed Computing Platform (DCP) .............................................................................................................................11 1.2.5. Relation of WMS to other OGC Web Services ...................................................................................................................................12 1.2.6. Relation of OGC Web Services to the ISO Reference Model.............................................................................................................13 1.3. Describing Your WMS Server: The GetCapabilities Request.....................................................................................................................16 1.3.1. Purpose of GetCapabilities: Allows a Map Server to Describe Itself ..................................................................................................16 1.3.2. Implementing GetCapabilities: Request Parameters..........................................................................................................................17 1.3.3. GetCapabilities Response: Capabilities XML Document....................................................................................................................18 1.4. Serving a Map: The GetMap Request ........................................................................................................................................................20 1.4.1. Purpose of GetMap.............................................................................................................................................................................20 1.4.2. Implementing GetMap: Required Parameters ....................................................................................................................................20 1.4.3. GetMap Response ..............................................................................................................................................................................23 1.4.4. Exception Handling .............................................................................................................................................................................24 1.4.5. Cascading WMS Servers....................................................................................................................................................................24 1.5. Optional Operation: The GetFeatureInfo Request......................................................................................................................................25 1.5.1. Purpose of GetFeatureInfo..................................................................................................................................................................25 1.5.2. Implementing GetFeatureInfo: Required Parameters.........................................................................................................................26 1.5.3. GetFeatureInfo Response...................................................................................................................................................................26 1.6. Connecting drivers to OGC WMS Services ................................................................................................................................................27 1.7. On What Technologies Does the WMS Specification Depend?.................................................................................................................27 1.7.1. Extensible Markup Language (XML)...................................................................................................................................................27 1.7.2. Validate XML - DTD (Document Type Definition) & XML Schema.....................................................................................................28 1.7.3. Transform and Format XML:XSL (Transforming the Web).................................................................................................................29 1.7.4. Navigate in XML: XPointer, Xlink ........................................................................................................................................................31 1.7.5. Managing XML-Extensibility: Namespaces.........................................................................................................................................31 1.7.6. Parse XML: DOM and SAX.................................................................................................................................................................32 1.8. Implementing WMS Compliance.................................................................................................................................................................33 1.8.1. Writing a WMS-Compliant Translator for a Map Server......................................................................................................................33 1.8.2. Making a Map Server WMS-Compliant...............................................................................................................................................33 1.8.3. Making a Web Client WMS Compliant................................................................................................................................................33 1.9. WMS Web Applications Development Technologies..................................................................................................................................33 1.9.1. CGI and Servlets.................................................................................................................................................................................34 1.9.2. ASP versus