Información útil para utilizar los geoservicios del Sistema de Información Territorial del IETU (SIETU).
El SIETU está basado en GeoNode que es una plataforma construida sobre software de código abierto para la gestión, publicación y difusión de información geoespacial. Permite compartir datos, mapas y servicios geográficos mediante estándares internacionales.
Este portal proporciona acceso a datos geográficos y servicios interoperables que pueden ser utilizados en aplicaciones externas, sistemas SIG de escritorio o desarrollos web. Esta página funciona como punto de partida para desarrolladores que quieran integrar los recursos disponibles en el SIETU en sus propias aplicaciones.
Todo el código se ejecuta sobre la base de GeoNode. El repositorio del proyecto se encuentra en: https://github.com/GeoNode/geonode
GeoNode a su vez se construye a partir de varios proyectos de software libre, cada uno con su propia comunidad de desarrollo. Entre los principales componentes se encuentran:
Los datos disponibles en este portal se publican utilizando estándares abiertos definidos por ISO y el Open Geospatial Consortium (OGC).
Los principales servicios disponibles son:
Estos servicios pueden integrarse en aplicaciones web o sistemas SIG utilizando bibliotecas como OpenLayers, GeoTools u OGR, todas disponibles como software libre.
Además, el servicio CSW (Catalog Service for the Web) permite consultar el catálogo de metadatos del sistema, facilitando la búsqueda y acceso a los recursos disponibles.
GeoWebCache es un sistema que genera teselas de mapas precalculadas compatibles con diferentes motores de visualización como OpenLayers o Google Maps.
Mediante el almacenamiento en caché de las imágenes de mapas, GeoWebCache mejora significativamente el rendimiento y la velocidad de visualización respecto al uso directo de servicios WMS.
Para consultar el catálogo de metadatos se puede utilizar cualquier cliente CSW, como por ejemplo el complemento MetaSearch de QGIS o aplicaciones desarrolladas en Python mediante la biblioteca OWSLib.
from owslib.csw import CatalogueServiceWeb
from owslib.fes import PropertyIsLike
csw = CatalogueServiceWeb('https://geoportal.sietu.uy/catalogue/csw')
anytext = PropertyIsLike('csw:AnyText', 'urban')
csw.getrecords2(constraints=[anytext])
print(csw.results)
print(csw.records)
Para incluir una capa publicada en GeoNode dentro de una aplicación web basada en OpenLayers,
primero se debe identificar el nombre técnico de la capa (campo name).
var geonodeLayer = new OpenLayers.Layer.WMS(
"Capa GeoNode",
"https://geoportal.sietu.uy/geoserver/wms",
{ layers: "workspace:layer_name" }
);
Los datos vectoriales pueden descargarse mediante el protocolo WFS en diferentes formatos como Shapefile, GeoJSON, GML o CSV.
https://geoportal.sietu.uy/geoserver/wfs?
request=GetFeature&
typeName=workspace:layer_name&
outputFormat=application/json
El protocolo WFS también permite realizar consultas más específicas, por ejemplo limitando la descarga a un área geográfica determinada o aplicando filtros sobre los atributos de los datos.
Los geoservicios del portal pueden consultarse mediante los siguientes endpoints:
| Mapas (WMS) | GetCapabilities |
| Datos vectoriales (WFS) | GetCapabilities |
| Datos raster (WCS) | GetCapabilities |
| Catálogo de metadatos (CSW) | GetCapabilities |
| Teselas en caché (WMTS) | GetCapabilities |