Appearance
Servicios Web de mapas
El Open Geospatial Consortium (OGC) es el grupo que establece los estándares que permiten a los sistemas de información geográfica su interoperabilidad. Entre estos estándares se encuentran:
Web Map Server (WMS) - un WMS provee una imagen de un mapa para ser mostrado por un cliente Web. El mapa es generado en el servidor así que el estilo y presentación dependen del proveedor de datos elegido. El cliente tiene una interactividad limitada con el mapa. Esta es una forma rápida y fácil de publicar datos geográficos en el Web. Los datos están relativamente seguros pues nunca dejan el servidor, excepto en forma de imagen.
Web Feature Server (WFS) - un WFS provee datos geográficos a un cliente Web. Este delega en el cliente qué hacer con los datos, ya sea mostrarlos al usuario o procesarlos mediante alguna rutina de análisis antes de mostrarlos. Este permite mucha más flexibilidad que un WMS ya que el cliente puede elegir los detalles de estilo y presentación al desplegar los datos. Un WFS transaccional permite que el usuario agregue y modifique datos en el servidor.
Geographic Markup Language (GML) - GML es un formato estándar para intercambiar datos entre aplicaciones geográficas. Este es un lenguaje basado en XML que tiene una estructura claramente definida de forma que cualquiera puede determinar los elementos en los archivos. Los servicios WFS proveen datos codificados usando GML.
Styled Layer Description (SLD) - SLD es una especificación XML para describir cómo un conjunto de datos geográficos será desplegados. La especificación SLD permite especificar cómo diferentes elementos son coloreados o simbolizados. Algunos WMS permiten que el usuario provea sus propios documentos SLD para cambiar la apariencia del mapa.
El protocolo GML
GML (Geography Markup Language) es un lenguaje de marcado basado en XML para el modelaje, transporte y almacenamiento de información geográfica. GML se diseñó a partir de la especificación abstracta producida por el OpenGIS Consortium, y la serie de documentos ISO 19100.
GML está respaldado por los principales fabricantes de software geográfico, así como las más importantes agencias estatales relacionadas con datos espaciales.
GML ofrece una amplia variedad de objetos para describir la geografía incluyendo entidades, sistemas de coordenadas, geometría, topología, tiempo, unidades de medida y valores generalizados, etc.
GML define la geometría y las propiedades de los objetos que comprenden la información geográfica. Sin embargo, GML no contiene información específica sobre como se debe hacer la visualización de los datos representados. GML diferencia entre los datos geográficos ( que son codificados en GML ) y sus interpretaciones gráficas que podrían ser un mapa o cualquier otra forma de visualización. Para ello se utilizan estilos que se relacionan a GML y se describen en otros lenguajes como SVG o KML.
GML es extensible, pudiendo crear entidades propias a partir de las existentes mediante extensión, o bien tomar las definidas y especializarlas para propósitos específicos siguiendo los mecanismos de herencia y estructuración en objetos. La definición de GML se realiza utilizando schemas. Los schemas de la especificación personalizan para un modelo de datos particular.
Como cualquier codificación XML, GML representa la información geográfica en formato texto:
<osgb:cartographicMember>
<osgb:polygon fid="polygon1">
<osgb:description>Some text to describe the polygon
</osgb:description>
<gml:Polygon gid="1" srsName="http://?/epsg.xml#EPSG:4326">
<gml:outerBoundaryIs>
<gml:LinearRing>
<gml:coordinates>32.5485,16.2633 -90.5485,24.2633
-85.5485,34.2633 30,30 32.5485,16.2633
</gml:coordinates>
</gml:LinearRing>
</gml:outerBoundaryIs>
<gml:innerBoundaryIs>
<gml:LinearRing>
<gml:coordinates>-72,24 -70,24 -70,25 -72,24
</gml:coordinates>
</gml:LinearRing>
</gml:innerBoundaryIs>
</gml:Polygon>
</osgb:polygon>
</osgb:cartographicMember>
El hecho de que sea texto le da simplicidad y es visible por sí mismo. Esto lo hace fácil de inspeccionar, y fácil de cambiar.
Codificación de entidades geométricas
Una entidad geográfica es una abstracción de un fenómeno del mundo real; es una entidad geográfica si está asociada a una localización en la Tierra ( o en otro planeta... ). p ej.: límites administrativos, carreteras, toponimia, símbolos, etc.
El estado de una entidad se define por un conjunto de propiedades. Cada propiedad puede estar definida por su nombre, tipo y valor
Las entidades geográficas espaciales son aquellas cuyas propiedades son valores geométricos. (puntos, líneas, áreas, curvas – B-Spline, Bezier, arcos -, superficies – TINs, mallas, splines-, sólidos – formas orientadas limitadas por superficies orientadas con interior y exterior). En GML también se admiten entidades sin geometría, pero no serán entidades geográficas.
Modelo de contenidos de GML:
<Class>
<property>
<Class>
<property>
….
</property>
</Class>
</property>
….
</Class\>
Ej. de entidad GML sin Geometría:
<Dean fid="D1123”>
<gml:description>A nice old chap</gml:description>
<familyName>Smith</familyName>
<age>42</age>
<nickName>Smithy</nickName>
<nickName>Bonehead</nickName>
</Dean>
Ej. de entidad GML con Geometría:
<Dean fid="D1123”>
<gml:description>A nice old chap</gml:description>
<familyName>Smith</familyName>
<age>42</age>
<nickName>Smithy</nickName>
<nickName>Bonehead</nickName>
<deanLocation>
<Point srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
<coord><X>5.0</X><Y>40.0</Y></coord>
</Point>
</deanLocation>
</Dean>
Una colección de entidades es un conjunto de entidades el cual puede ser considerado como una entidad en sí. Tendrá sus propias propiedades. P.ej. Una ciudad
Codificación de la topología
GML describe la correspondencia topológica y las relaciones geométricas hasta 3 dimensiones (topología volumétrica). Hay cuatro clases instanciables de primitivas de objetos topológicos, uno para cada dimensión hasta 3D. También se incluyen topologías complejas, al igual que las geometrías. P. Ej. una red de metro.
Codificación de sistemas de referencia espacial
GML puede definir una escala de medida para asignar valores a una localización, tiempo o cualquier otra cantidad descriptiva o cualitativa. Para definir los sistemas de referencia de coordenadas tiene la capacidad de definir datums. Incorpora las principales proyecciones y sistemas de referencia geocéntricos.
Un sistema de referencia temporal ofrece unidades estándar para la medida del tiempo y describe la longitud o duración temporal. ISO 19108, el calendario Gregoriano, con el tiempo UTC. Esto permite definir entidades dinámicas, objetos en movimiento. Importante para LBS (Location Based Service).
El protocolo WMS
El servicio de generación de mapas (WMS) definido por el OGC ( Open Geospatial Consortium) produce mapas a partir de datos geográficos. Este estándar internacional define un “mapa” como una representación de los datos geográficos en forma de un archivo de imagen digital. Los mapas producidos por un WMS se generan normalmente en un formato de imagen como PNG, GIF o JPEG, y ocasionalmente, se representan como información vectorial en formato Scalable Vector Graphics (SVG) o Web Computer Graphics Metafile (WebCGM).
El Servicio de publicación de mapas (WMS) produce mapas de forma dinámica a partir de información geográfica vectorial o raster, presentando la información como imágenes digitales susceptibles de ser visualizadas en pantalla. Los mapas visualizados pueden superponerse unos a otros, siempre y cuando los parámetros geográficos y el tamaño de salida sean los mismos. El uso de formatos que permiten fondo transparente (por ejemplo GIF o PNG) facilita la visualización simultánea de estos mapas.
A través de la superposición de mapas obtenidos de diferentes servidores es posible la creación de una red de servicios distribuidos, cuyos clientes realizarán composiciones personalizadas.
La especificación WMS estandariza la forma en que los mapas son solicitados por los clientes y la forma en que los servidores describen los datos que mantienen.
Operaciones
Este estándar internacional define dos clases de modos de operar, uno para un WMS básico, y otro para un WMS de consulta. A su vez cada uno tiene dos subclases, una para clientes y otra para servidores.
El WMS básico debe soportar los elementos básicos del servicio (versión, peticiones y respuestas HTTP, valores numéricos y booleanos, determinados formatos de salida, sistemas de coordenadas, parámetros de consulta y de respuesta, y excepciones), la operación GetCapabilities y la operación GetMap. Clasifica la información que posee en “Capas” y ofrece un número determinado de “Estilos”, con los cuales se pueden visualizar dichas capas. Este Estándar Internacional únicamente soporta Capas y Estilos definidos, no incluye mecanismos de definición de simbolización por parte del usuario.
El WMS de consulta debe satisfacer todos los requerimientos de un WMS básico y también soportar la operación GetFeatureInfo.
El estándar define entonces tres operaciones:
GetCapabilities (requerida): Devolver metadatos del nivel de servicio, que es una descripción de la información de contenido y parámetros aceptados por el WMS.
GetMap (requerida): Devolver un mapa cuyos parámetros geográficos y dimensionales han sido bien definidos.
GetFeatureInfo (opcional): Devolver información de características particulares mostradas en el mapa.
Las operaciones WMS pueden ser invocadas usando un navegador estándar realizando peticiones en la forma de URLs (Uniform Resource Locators). El contenido de tales URLs depende de la operación solicitada. Todas las URLs incluyen un número de versión de la especificación y el tipo de parámetros solicitado. Adicionalmente, cuando se invoca GetMap un cliente puede especificar la información a mostrar en el mapa (una o más “capas”), posiblemente los “estilos” de esas capas, qué porción de la tierra debe dibujar, el sistema de coordenadas de referencia, y la anchura y la altura de la imagen de salida.
Cuando se invoca a GetFeatureInfo el cliente indica qué mapa será consultado y que ubicación en el mapa es de interés.
Cuando dos o más mapas se producen con los mismos parámetros geográficos y tamaño de salida, los resultados se pueden solapar para producir un mapa compuesto. El uso de formatos de imagen que soportan fondos transparentes (e.g., GIF o PNG) permite que los mapas subyacentes sean visibles. Además, se puede solicitar mapas individuales de diversos servidores. Así, la operación GetMap permite la creación de una red de Servidores de Mapas distribuidos desde donde los clientes construyen mapas específicos.
Generalmente un WMS no es invocado directamente, sino que es llamado por una aplicación cliente que provee al usuario controles de interacción. Esta aplicación cliente puede o no puede ser basada en Web.
Un WMS puede permitir, en forma opcional, la operación GetFeatureInfo. Si es así, se dice que el mapa es “consultable”, y un cliente puede solicitar información sobre elementos en el mapa mediante la inclusión de parámetros adicionales en el URL del mapa. Estos parámetros pueden especificar una ubicación (como un desplazamiento X,Y desde la esquina superior izquierda) y un número de elementos cercanos sobre los que retornará la información.
Actualmente, existen muchos productos disponibles que se adhieren a este estándar, entre ellos: ArcIMS (ESRI), MapXtreme (MapInfo), (Autocad), MapServer, y Geoserver.
El protocolo WFS
Un Servicio Web de Mapas (WMS) permite a un cliente traslapar imágenes de mapas procedentes desde múltiples servicios WMS. En una forma similar, un Servicio Web de Entidades (WFS) permite a un cliente recuperar datos geográficos codificados en el lenguaje GML desde múltiples Servicios Web de Entidades.
Un servidor WFS permite las operaciones INSERT, UPDATE, DELETE, QUERY y DISCOVERY en entidades geográficas usando HTTP como protocolo de comunicación distribuida.
El propósito del Web Feature Server Interface Specification(WFS) es describir las operaciones de manipulación de datos sobre OpenGIS® Simple Features, ya que este servidor y el cliente se pueden comunicar en el ámbito de objeto y atributo.
Operaciones
El servicio WFS define las siguientes operaciones:
GetCapabilities: esta operación describe los tipos de elementos geográficos que el servicio puede manipular y las operaciones que son permitidas sobre ellos.
DescribeFeatureType: describe la estructura de cualquier tipo de elemento geográfico que el servicio puede manipular.
GetFeature: procesa una solicitud de recuperación de una o varias instancias de elementos geográficos, a partir de una consulta preparada por un cliente.
El protocolo SLD
Para personalizar la simbolización OGC ha definido la especificación Styled Layer Descriptor (SLD), o descripción de estilos de capas, que permite la definición temporal o permanente de la simbolización para visualizar datos vía WMS.
Styled Layer Descriptor (SLD), es un esquema XML propuesto por Open Geospatial Consortium como lenguaje estándar para describir el conjunto de capas que dan apariencia a un mapa. En los Sistemas de Información Geográfica y servidores de mapas SLD ayuda a definir el estilo visual de cada capa de objetos geográficos que componen el mapa, permitiendo, por ejemplo, representar el color de relleno, tipo y ancho de borde, etc.