Comparación de clientes ligeros web para SIG

From OSGeo
Jump to navigation Jump to search

Objetivo

Esta comparación está destinada a todos aquellos que busquen una primera aproximación a los proyectos de SIG en la web del lado del cliente y pretende brindar elementos de decisión para elegir una u otra tecnología según los requerimientos que se tengan.

Introducción

En la actualidad, los Sistemas de Información Geográfica (SIG) han logrado ampliar su utilidad práctica incluyendo usuarios con diferentes niveles de preparación debido al auge de las aplicaciones web, cada vez más enfocadas al usuario final y con interfaces gráficas más enriquecidas. El propósito de este estudio es brindar elementos de decisión a los analistas de proyectos SIG en la web para elegir una u otra tecnología del lado del cliente, según los requerimientos que se tengan en un proyecto determinado.

Los clientes web para SIG son aplicaciones de internet que se encargan de visualizar información geográfica y permiten su manipulación a través de herramientas básicas de navegación y análisis. Existen varios proyectos de software libre y de código abierto que facilitan la administración, el desarrollo y la personalización de este tipo de aplicaciones, las cuales consumen servicios web y comunican al usuario con tareas avanzadas que se realizan en el servidor.

El Open Geospatial Consortium (OGC) ha promovido el uso de estándares para servicios web de mapas que han ayudado a establecer un marco común de trabajo para acceder a información geográfica en la internet (Web Map Service, Web Feature Service, Web Coverage Service), presentarla por medio de estilos (Style Layer Descriptor), filtrarla (Filter encoding), almacenarla, transportarla (Geography Markup Language y Keyhole Markup Language) y procesarla (Web Processing Service).

Dependencia entre clientes

A continuación se presenta una gráfica de dependencia entre clientes web de software libre y de código abierto para SIG.

Dependencia clientes 20091110 2108.png

La mayoría de proyectos gira en torno a dos paradigmas: UMN MapServer y OpenLayers. Los clientes que utilizan como base UMN MapServer fueron creados años atrás aprovechando las características que este cliente dispone: mapa, escala, mapa de referencia, herramientas de navegación básica, identificación de objetos espaciales; y su Interfaz de Programación de Aplicaciones (API) llamada MapScript que ha sido implementada en diferentes lenguajes de programación como PHP, Python, Perl y Ruby, y que continua su desarrollo adicionando funcionalidades como el etiquetado y la generación de gráficos de barra y de torta. Por otra parte, la nueva generación de clientes utiliza OpenLayers debido a su óptimo rendimiento en tareas de renderización en la web. Diferentes empresas contribuyen a su desarrollo y proyectos como MapBuilder han finalizado para acelerar su progreso.

Existen clientes que no se han basado en otros sino que han sido originados de manera independiente, como el caso de Geomajas, iGeoPortal, Mapbender, TimeMap, MiraMon y worldKit. Algunos clientes utilizan opcionalmente UMN MapServer por medio de MapScript (AppForMap, GeoMOOSE y msCross) y otros permiten elegir una manera adicional para renderizar sus mapas con OpenLayers (AppForMap e i3Geo) y Flamingo (i3Geo).

Es de anotar que debido a su versatilidad Flash ha servido para construir clientes web para SIG, como por ejemplo en los proyectos Flamingo y worldKit, brindando una nueva experiencia para los usuarios que buscan consultar mapas en línea.

La comparación

Existen varios proyectos para construir clientes ligeros web para SIG. El equipo GeoTux ha elaborado la siguiente comparación basándose en proyectos de software libre y de código abierto con capacidad para acceder a servicios web de mapas regulados por el OGC, mostrando en forma de ventajas y desventajas diferentes parámetros como son: su licencia, su país de origen, los idiomas que manejan, su soporte comercial, los lenguajes de programación que permiten, su independencia con respecto a programas servidores de mapas y el manejo de metadatos que poseen, entre otros.

Se presenta en tres partes para facilitar su visualización:

  1. Descripción general: Se da una introducción a cada proyecto.
  2. Características técnicas: Se presentan datos técnicos de los programas para facilitar una descripción detallada.
  3. Enlaces de interés: Comprende una captura de pantalla que muestra una interfaz de cada proyecto y direcciones para acceder a páginas de interés de los mismos.

Convenciones

Los parámetros que corresponden a una ventaja para un cliente son representados con color verde, las desventajas con color naranja, así: Ventaja/Desventaja.

Descripción General

Cliente País Licencia Desarrollo original Apoyo de OSGeo Documentación Observaciones
AppForMap Dinamarca.png GNU GPL v.2 Martin Hoegh No Idiomas: Inglés
Formatos: HTML
Niveles: Desarrolladores[1]
Utiliza el Simple Feature Specification para consultar y modificar bases de datos PostgreSQL/PostGIS. Utiliza PHP/MapScript para funcionar como cliente de UMN MapServer (opcional). Recientemente se ha agregado la posibilidad de utilizar OpenLayers para el renderizado.
CartoWeb Francia.png Suiza.png GNU GPL Camptocamp SA No Idiomas: Francés; Inglés
Formatos: HTML; PDF; Wiki
Niveles: Usuarios; Desarrolladores
Es un framework. Posee una arquitectura orientada a objetos que lo hace modular. Puede ser configurado como servicio web SOAP. Se obtiene todo su potencial cuando se asocia con PostgreSQL/PostGIS.
Chameleon Canada.png Chameleon License[2] DM Solutions Group No Idiomas: Inglés
Formatos: HTML; Wiki
Niveles: Usuarios; Desarrolladores
Posee una API Javascript bien documentada y consolidada. Crecimiento acelerado a través de widgets personalizados.
ET - Map Alemania.png GNU GPL v.2 SEDesign No Idiomas: Alemán
Formatos: txt
Niveles: Usuarios[3]
No trabaja con AJAX. Utiliza algunas funciones Javascript del proyecto p.mapper. Su desarrollo ha finalizado.
Flamingo Holanda.png GNU GPL v.2 Flamingo MC Community No Idiomas: Alemán; Inglés
Formatos: HTML; Trac; Wiki
Niveles: Usuarios; Desarrolladores
Está desarrollado con base en una serie de componentes que realizan las tareas comunes de navegación y consultas.
Fusion Canada.png Usa.png MIT AutoDesk; DM Soultions Group No[4] Idiomas: Francés; Inglés
Formatos: Trac; Wiki
Niveles: Usuarios; Desarrolladores
Es un framework. Usa OpenLayers como API base. Está soportado comercialmente.
GeoExt Austria.png Francia.png Holanda.png Suiza.png Usa.png BSD Camptocamp SA; OpenGeo; OSGIS No[5] Idiomas: Inglés
Formatos: Blog; HTML; Trac; Wiki
Niveles: Usuarios; Desarrolladores[6]
Proyecto incipiente. Está basado en OpenLayers y en Ext JS. Busca dar al usuario SIG controles avanzados en internet.
Geomajas Belgica.png GNU AGPL v.3 DFC Software Engineering; GeoSparc No Idiomas: Inglés
Formatos: HTML; Tracker
Niveles: Usuarios; Desarrolladores
Es un framework. Admite dos opciones para implementar su interfaz: Javascript (Dojo) y Java (Google Web Toolkit). Cuenta con herramientas de edición, snapping, medición, consultas avanzadas y análisis. Soporta reproyección al vuelo. Tiene un componente avanzado de impresión.
GeoMOOSE Usa.png MIT-style v.2+; City of Saint Paul Open Source License v.1.x City of Saint Paul, Minnesota No (En incubación) Idiomas: Inglés
Formatos: HTML
Niveles: Usuarios
Es un framework. Tiene una arquitectura modular. Es configurable. Busca ser un cliente de UMN MapServer usando PHP/MapScript, pero fue diseñado para no depender de este. Utiliza OpenLayers como motor de renderizado.
GMap Canada.png GNU GPL DM Soultions Group No Idiomas: Inglés
Formatos: txt
Niveles: Usuarios[7]
Es una aplicación de ejemplo de la extensión PHP/MapScript. Se encuentra generalmente dentro de paquetes de utilidades como MS4W o FGS. Es utilizado en el proyecto MapLab.
i3Geo Brasil.png GNU GPL v.2 Ministério del Médio Ambiente de Brasil, Portal do Software Público Brasileiro [8] No Idiomas: Portugués
Formatos: Blog; HTML; Trac; Video; Wiki
Niveles: Usuarios; Desarrolladores
Aplicación basada en UMN MapServer, utiliza PHP/MapScript. Además de la principal, puede utilizar OpenLayers, Google Maps, Google Earth o Flamingo como interfaces alternativas. Tiene una versión más ligera para conexiones lentas y cuenta con versión para dispositivos móviles. Realiza análisis espacial en línea.
iGeo-Portal Alemania.png LGPL lat/lon; GIS Research Group of the Department of Geography of University of Bonn No (En incubación) Idiomas: Alemán; Inglés
Formatos: HTML; PDF; Wiki
Niveles: Usuarios
Es un framework. No trabaja con AJAX. Arquitectura modular. Basado en estándares OGC e ISO/TC 211. Componente de seguridad. Soporta Gazeteer para consultas espaciales por nombres o direcciones. La mayor parte de la configuración es XML.
ka-Map Canada.png MIT[9] DM Soultions Group No Idiomas: Francés; Inglés; Japonés
Formatos: Wiki
Niveles: Usuarios; Desarrolladores
Requiere PHP/MapScript. Está diseñado para usar cacheo tanto como sea posible y para renderizar rápidamente mapas con tiles.
Mapbender Alemania.png GNU GPL CCGIS Si (Graduado) Idiomas: Alemán; Inglés[10]
Formatos: PDF; Trac; Wiki
Niveles: Usuarios; Desarrolladores
Es un framework. Provee interfaces de administración para la gestión de seguridad, usuarios y grupos a través de una base de datos en MySQL o PostgreSQL.
MapBuilder LGPL Si (Graduado) Idiomas: Inglés
Formatos: Wiki
Niveles: Usuarios; Desarrolladores
Comparte motor de renderizado vectorial con OpenLayers. Editor de Style Layer Descriptor. Se ofrece soporte comercial (LISAsoft de Australia y DM Solutions Group de Canadá). Su desarrollo ha finalizado.
MapFish Francia.png Suiza.png GNU GPL v.3 Camptocamp SA No (En incubación) Idiomas: Francés; Inglés
Formatos: Blog; HTML; Trac; Wiki
Niveles: Usuarios; Desarrolladores
Es un framework. Está basado en Pylons. Del lado del cliente utiliza y extiende OpenLayers, GeoExt y ExtJS.
MiraMon Espana.png GNU GPL v.3 Xavier Pons No Idiomas: Catalán; Español; Inglés
Formatos: HTML
Niveles: Usuarios
Cliente AJAX. Consta de archivos HTML y Javascript. Es financiado por el Centre de Supercomputació de Catalunya (CESCA-FCR).
msCross Italia.png GNU GPL Center for Advanced Studies, Research and Development in Sardinia No Idiomas: Francés; Inglés; Italiano
Formatos: HTML; Trac
Niveles: Usuarios; Desarrolladores[11]
Creado como cliente AJAX para UMN MapServer, actualmente puede funcionar prescindiendo de este. Consta de un solo archivo Javascript.
p.mapper GNU GPL Armin Burger No Idiomas: Inglés
Formatos: PDF; Trac; Wiki
Niveles: Usuarios
Es un framework. Basado en MapServer y PHP/MapScript. Provee un buen conjunto de herramientas listas para usar. Tiene una API de plugins para agregar funcionalidades. Se ofrece soporte comercial desde Italia, Eslovaquia y Alemania.
OpenLayers Usa.png BSD-style Metacarta Si (Graduado) Idiomas: Francés; Inglés; Portugués; Ruso
Formatos: Blog; HTML; Trac; Wiki
Niveles: Usuarios; Desarrolladores
No tiene dependencias en el servidor. Sirve de base para varios proyectos en la web. Soporta reproyección. Soporta SLD. Funcionalidades básicas de edición en línea. Desarrollo rápido. Gran cantidad de ejemplos.
TimeMap Australia.png GNU GPL; LGPL University of Sydney (Archaeological Computing Laboratory) No Idiomas: Inglés
Formatos: HTML; PDF
Niveles: Usuarios; Desarrolladores
Consiste en un applet de Java (TMJava). Se especializa en datos espacio-temporales, los cuales presenta a través de animaciones. Puede empaquetarse en un CD-ROM para funcionar como aplicación independiente a través de un navegador web. Cuenta con una herramienta de publicación y administración de datos para Windows (TMWin) pero su uso es opcional.
UMN MapServer Usa.png MIT-style[12] University of Minnesota Si (Graduado) Idiomas: Inglés
Formatos: HTML; PDF; Trac; Wiki
Niveles: Usuarios; Desarrolladores
Provee funcionalidades para generar escala gráfica, leyenda y mapa de localización. Soporta SLD. Puede ser extendido con plantillas HTML o usando MapScript. Soporta simbología (tortas, barras) y etiquetas avanzadas. No trabaja con AJAX por defecto.
WebGIS Public Suecia.png GNU GPL v.3 SWECO Position AB No Idiomas: Inglés
Formatos: HTML; Wiki
Niveles: Usuarios; Desarrolladores[13]
Está basado en OpenLayers y en Ext JS. Su desarrollador principal ha anunciado su apoyo al proyecto GeoExt con el fin de no duplicar esfuerzos.
worldKit Usa.png GNU GPL v.2 Mapufacture No Idiomas: Inglés
Formatos: Blog; HTML
Niveles: Usuarios; Desarrolladores
Aplicación en Flash. Se configura a través de XML. Acepta GeoRSS e imágenes de base en formato JPEG. Despliega anotaciones y fotografías asociadas a elementos del mapa.

Características Técnicas

Cliente Lenguaje en el que está escrito Lenguaje de programación que admite su API Servicios OGC que consume Dependencia de servidor de mapas ¿Requiere plug-ins privativos? ¿Incluye componente de metadatos? Listas de correo
AppForMap Javascript; PHP Javascript; PHP WMS; WFS No No No No
CartoWeb PHP PHP WMS; WFS Si (UMN MapServer) No No Si (Usuarios; Desarrolladores)
Chameleon Javascript; PHP Javascript; PHP WMS Si (UMN MapServer) No No Si (Anuncios; Usuarios; Desarrolladores)
ET - Map Javascript; PHP Javascript; PHP WMS No No No No (Solo foros)
Flamingo ActionScript ActionScript WMS; WFS; WFS-T No Si (Adobe Flash Player) No No (Solo foros)
Fusion Javascript; PHP Javascript; PHP WMS Si (MapGuide Open Source; UMN MapServer) No No Si (Usuarios; Desarrolladores; Commits; Trac)
GeoExt Javascript Javascript WMS; WFS; WFS-T No No No Si (Usuarios; Desarrolladores; Commits; Trac)
Geomajas Java; Javascript Javascript WMS; WFS No No No Si (Usuarios; Desarrolladores)
GeoMOOSE Javascript; PHP Javascript; PHP WMS; WFS No No No Si (Usuarios; Desarrolladores)
GMap PHP PHP WMS; WFS Si (UMN MapServer) No No No
i3Geo Javascript; PHP Javascript; PHP WMS; WFS; WCS; SOS Si (UMN MapServer) No No No (Solo foros)
iGeo-Portal Java Javascript; ASP; JSP WMS; WFS; WCS; CS-W; WFS-G; WPS; WTS; WCTS; SOS; WPVS No No Si (Servicios de catálogo OGC para metadatos ISO 19115/19119) Si (Anuncios; Usuarios; Desarrolladores)
ka-Map Javascript; PHP Javascript; PHP WMS; WFS[14] Si (UMN MapServer) No No Si (Usuarios; Desarrolladores)[15]
Mapbender Javascript; PHP PHP WMS; WFS: WFS-T No No Si (Cumple con la especificación ISO-19119) Si (Usuarios; Desarrolladores; Commits)
MapBuilder Javascript Javascript WMS; WFS; WFS-T No No No Si (Anuncios; Usuarios; Desarrolladores)
MapFish Javascript; Python Java; Javascript; PHP; Python WMS; WFS No No No[16] Si (Usuarios; Desarrolladores; Commits; Trac)
MiraMon Javascript Javascript WMS; WCS; WFS[17] No No No Si (Commits)
msCross Javascript Javascript WMS; WFS[18] No No No Si (Usuarios)
p.mapper Javascript; PHP Javascript; PHP WMS; WFS Si (UMN MapServer) No No Si (Usuarios)
OpenLayers Javascript Javascript WMS; WFS No No No Si[19]
TimeMap Java Javascript; JSP WMS No No[20] Si (Maneja metadatos básicos para el mapa) No
UMN MapServer C/C++ PHP; Python; Perl; Ruby; Java; .NET WMS; WFS; WCS; SOS Si (UMN MapServer) No No Si (Anuncios; Usuarios; Desarrolladores)[21]
WebGIS Public Javascript Javascript WMS No No No No
worldKit ActionScript Javascript WMS No Si (Adobe Flash Player) No Si[22]

Enlaces de Interés

Cliente Versión actual (Noviembre de 2009) Página oficial Descargas Documentación Galería Captura de pantalla
AppForMap 0.6a (2006/03/21) [1] [2] --- ---
Appformap.png
CartoWeb 3.5.0 (2008/09/04) [3] [4] [5] [6]
Cartoweb.png
Chameleon 2.6 rc1 (2007/09/06) [7] [8] [9] [10]
Chameleon.jpg
ET - Map 0.5[23] (2007/02/23) [11] --- --- ---
Etmap.png
Flamingo 3.1 (2009/09/07) [12] [13] [14] ---
Flamingo.png
Fusion 2.0.0 beta1 (2009/10/09) [15] [16] [17] [18]
Fusion.png
GeoExt 0.6 (2009/10/15) [19] [20] [21] [22]
Geoext.png
Geomajas 1.4.0 (2009/06/23) [23] [24] [25] [26]
Geomajas.png
GeoMOOSE 2.0.1 (2009/10/09) [27] [28] [29] [30]
Geomoose.png
GMap 1.6 (2005/04/25) --- [31] --- ---
Gmap.png
i3Geo 4.2 (2009/08/21) [32] [33] [34] [35]
I3geo.png
iGeo-Portal 2.2 (2008/12/22) [36] [37] [38] [39]
Igeoportal.png
ka-Map 1.0 (2007/02/05) [40] [41] [42] [43]
Kamap.png
Mapbender 2.6 (2009/09/22) [44] [45] [46] [47]
Mapbender.png
MapBuilder 1.5[24] (2009/07/16) [48] [49] [50] [51]
Mapbuilder.png
MapFish 1.2 (2009/10/15) [52] [53] [54] [55]
Mapfish.png
MiraMon 4.10 (2008/06/27) [56] [57] --- ---
Miramon.png
msCross 1.1.9 (2007/02/18) [58] --- --- ---
Mscross.png
p.mapper 4.0 beta3 (2009/09/26) [59] [60] [61] [62]
Pmapper.png
OpenLayers 2.8 (2009/06/22) [63] [64] [65] [66]
Openlayers.png
TimeMap 2.2.25[25] (2007/10/02) [67] [68] [69] [70]
Tmjava.png
UMN MapServer 5.6.0 beta 4 (2009/10/18) [71] [72] [73] [26] [74] [27]
Umnmapserver.png
WebGIS Public 1.2.4 (2009/04/23) [75] [76] [77] [78]
Webgis.png
worldKit 3.3 (2007/05/03) [79] [80] [81] [82]
Worldkit.png

Notas al pie

  1. Documentación incipiente.
  2. Compatible con BSD.
  3. La única documentación disponible corresponde al proceso de instalación.
  4. Aunque OSGeo no lo apoya como proyecto oficial, le da alojamiento a sus listas de correo y a su Trac.
  5. El Copyright será transferido a OSGeo.
  6. Documentación incipiente.
  7. Documentación incipiente.
  8. Ver: http://www.softwarepublico.gov.br
  9. Compatible con GPL.
  10. Actualmente se trabaja sobre traducciones a varios idiomas: Sueco, español, búlgaro, polaco, italiano, francés, checo, esloveno, entre otros.
  11. Documentación incipiente.
  12. Ver: http://www.mapserver.org/copyright.html#license
  13. Documentación incipiente.
  14. Solo soporta puntos para el WFS.
  15. No tiene listas de correo propias. Las listas de correo son del proyecto Deegree.
  16. Actualmente se trabaja en un cliente catálogo de metadatos empleando GeoNetwork. (Ver: https://trac.mapfish.org/trac/mapfish/wiki/Proposals/Catalogue)
  17. Solo soporta puntos para el WFS.
  18. Solo soporta puntos para el WFS.
  19. Tiene listas de correo para: Usuarios, desarrolladores, commits, anuncios, tilecache y trac, entre otras.
  20. Se ejecuta mediante un applet de Java.
  21. Tiene una lista de correo en alemán.
  22. Tiene una lista de correo en la que participan usuarios y desarrolladores.
  23. Ya no habrán más versiones del programa.
  24. Ya no habrán más versiones del programa.
  25. Corresponde a la versión de TMJava.
  26. Ver la sección OGC Support and Configuration, en donde se explica cómo usar UMN MapServer como cliente.
  27. Se está implementando la galería oficial: http://www.mapserver.org/introduction.html#gallery

Notas con respecto a la comparación

  • Los datos fueron recogidos directamente de los sitios web de los proyectos, posteriormente se validaron a través de listas de correo o en su defecto de foros. Se ha recibido buen apoyo de parte de los involucrados con cada proyecto.
  • Las celdas en blanco indican datos que no se recogieron.
  • El apoyo de OSGeo se da cuando el proyecto se gradúa del proceso de incubación, por lo cual los proyectos que están en la incubadora no son proyectos oficiales de OSGeo y no reciben su soporte. Ver: Incubador

Tú puedes colaborar

Si ves algún error u omisión en la comparación por favor edítalo (necesitas un usuario en OSGeo), o si lo prefieres, escríbenos y haremos la corrección. Si conoces algún otro cliente ligero web y te gustaría verlo en la comparación comunícanoslo para investigarlo y anexarlo, o en el mejor de los casos hazlo tú :D.

Conclusión

Se observó que existe abundancia de proyectos libres para construir clientes web para SIG, algunos muy profesionales y elaborados que permiten realizar una gestión integral de la información y que reciben soporte del OGC debido a que involucran eficientemente a toda una comunidad; otros, resultado de esfuerzos individuales destacados que cumplen necesidades básicas. Algunos han desaparecido por duplicación de esfuerzos y otros han tomado como base desarrollos previos para ampliar sus alcances funcionales.

Licencia

Este artículo puede ser utilizado bajo la licencia Attribution 2.5 Colombia.

Referencias

  • Esta versión de la comparación ha sido realizada y mantenida por Germán Carrillo del equipo GeoTux, con sugerencias de Lorenzo Becchi, Jorge Sanz y Evaristo Gestoso. La puedes encontrar en su formato original en la página web GeoTux
  • Página web oficial de cada proyecto. (Ver parte 3 de la comparación: Enlaces de interés)
  • Emanuel Schütze. Current state of technology and potential of smart map browsing in web browsers. Alemania. Junio de 2007. Disponible en la URL: [83]
  • Open Source Geospatial Foundation (OSGeo). [84]
  • Banderas del mundo. [85]