# GeoServer

En computación, GeoServer - un servidor de código abierto escrito en Java - permite a los usuarios compartir y editar datos geoespaciales. Diseñado para la interoperabilidad, publica datos de las principales fuentes de datos espaciales usando estándares abiertos. GeoServer ha evolucionado hasta llegar a ser un método sencillo de conectar información existente a globos virtuales tales como Google Earth y NASA World Wind (véase así como mapas basados en web como OpenLayers, Google Maps y Bing Maps). GeoServer sirve de implementación de referencia del estándar Open Geospatial Consortium Web Feature Service, y también implementa las especificaciones de Web Map Service y Web Coverage Service.

## Historia

Fue diseñado para que la ciudadanía pudiese implicarse en el gobierno y el planeamiento urbano en el año 2001 por medio del Proyecto de Planificación Abierta (The Open Planning Project, TOPP por sus siglas en idioma inglés). GeoServer es una organización sin fines de lucro.
GeoServer a su vez dio pie para crear otro proyecto de Sistema de información geográfica llamado GeoTools, también basado en Java como un equipo de herramientas. Otro proyecto relacionado y contemporáneo con GeoServer es el que lleva a cabo el Open Geospatial Consortium que norman el protocolo de Marcado de Lenguaje Geográfico (Geography Markup Language), un sublenguaje de XML para el modelaje, transporte y almacenamiento de información geográfica.

## Objetivos

GeoServer pretende operar como un nodo a través de una Infraestructura de Datos Espaciales libre y abierta para ofrecer datos geoespaciales, tal y como ha hecho Apache HTTP Server ofreciendo un servidor web abierto y libre para publicar HTML.

## Características principales

Entre las principales características de Geoserver se pueden citar algunas como:
* Enteramente compatible con las especificaciones WMS, WCS y WFS, testados por el test de conformidad CITE de la OGC.
* Fácil utilización a través de la herramienta de administración vía web -no es necesario entrar en archivos de configuración grandes y complicados-.
* Soporte amplio de formatos de entrada PostGIS, Shapefile, ArcSDE y Oracle. VFP, MySQL, MapInfo y WFS en cascada también están entre los formatos de entrada soportados (véase más abajo).
* Soporte de formatos de salida tales como JPEG, GIF, PNG, SVG y GML.
* Imágenes con antialiasing.
* Soporte completo de SLD, como definiciones del usuario (POST y GET), y como uso de configuración de estilos.
* Soporte para edición de datos de banco de datos individuales a través del protocolo WFS transactional profile (WFS-T), disponible para todos los formatos de datos.
* Basado en servlets Java (JEE), puede funcionar en cualquier servlet contenedor.
* Proyectado para ser compatible con extensiones.
* Facilidad de escritura de nuevos formatos de datos con la interfaz de almacenamiento de datos GeoTools y clases de ayuda.
Además, GeoServer incluye un cliente integrado OpenLayers para previsualizar capas de datos. GeoServer también soporta la publicación de datos geoespaciales para Google Earth a través del uso de enlaces de red, utilizando KML para ello. Funciones avanzadas disponibles para output de Google Earth incluyen plantillas para pop-ups personalizados, visualizado de altitud y longitud, y "super-overlays".
GeoServer se basa en GeoTools, una biblioteca de sistemas de información geográfica.

## Formatos

Entre los formatos de entrada aceptados se encuentran los siguientes:
* PostGIS
* Oracle Spatial
* ArcSDE
* DB2
* MySQL
* Shapefile
* GeoTIFF
* GTOPO30
* ECW, MrSID
* JPEG2000
Entre los formatos de salida en los cuales GeoServer Web Map Service es capaz de producir archivos a través de protocolos estándar, se encuentran los siguientes:
* KML
* GML
* Shapefile
* GeoRSS
* PDF
* GeoJSON
* JPEG
* GIF
* SVG
* PNG
y otros.

## Uso

Las siguientes instituciones usan GeoServer:
* MassGIS (Massachusetts state GIS)
* TriMet (Transit agency for Portland, Oregon)
* Ordnance Survey (National Mapping Agency of the UK)
* Institut Géographique National (National Mapping Agency of France)
* GBIF (Global Biodiversity Information Facility)
* Banco mundial
* Global Earthquake Model
* FAO (Food and Agriculture Organization of the United Nations)
* New York City Department of Information Technology and Telecommunications
* Ministerio de Salud del Perú
* Mapa Educativo Nacional, del Ministerio de Educación de Argentina
* Municipalidad Provincial de Barranca
* QualityCommander.com, Sistema de datos georeferenciados de redes de telecomunicaciones

## Arquitectura

GeoServer usa Restlet como framework para los servicios REST que proporciona. Incluye Jetty como servidor embebido, pero soporta cualquier servlet container común. GeoWebCache, un componente de cacheado basado en Java similar a TileCache, se incluye con GeoServer, aunque también está disponible por separado.