10.2. Lesson: Web Feature Services

Un Web Feature Services (WFS) proporciona a sus usuarios datos SIG en formatos que pueden ser cargados directamente en QGIS. No como WMS, que te proporciona solo un mapa que no puedes editar, un WFS te dá acceso a los propios elementos.

El objetivo de esta lección: Utilizar WFS y entender sus diferencias respecto a WMS.

10.2.1. basic Follow Along: Cargar una Capa WFS

  1. Comienza un mapa nuevo. Este es para fines de demostración y no será guardado.

  2. Click en el botón dataSourceManager Abrir Administrador de Fuentes de Datos.

  3. Habilite la pestaña wfs WFS / OGC API - Features.

  4. Haz click en el botón Nuevo

  5. En el cuadro de diálogo que aparece, ingrese el Nombre como nsidc.org y la URL como https://nsidc.org/cgi-bin/atlas_south?version=1.1.0.

    ../../../_images/new_wfs_connection.png
  6. Haz click en Aceptar, y la nueva conexión aparecerá en Conexiones de servidor.

  7. Haz click en Conectar. Una lista de las capas disponibles aparecerá:

    ../../../_images/wfs_connection_layers.png
  8. Desmarque la opción Solicitar solo entidades que se superpongan a la extensión de la vista debajo de la lista de capas, ya que es posible que el lienzo de su mapa actual no cubra nuestra área de interés: Antarctica.

  9. Encuentra la capa antarctica_country_border. Puedes usar el recuadro de arriba Filtro.

  10. Haz clic en la capa para seleccionarla:

  11. Encuentra y selecciona también la capa south_poles_wfs. Puede que necesites mantener Ctrl.

    ../../../_images/south_poles_wfs.png
  12. Haz clic en Añadir.

    Puede llevar un tiempo cargar las capas. Cuando estén cargados, aparecerán en el mapa, mostrando los contornos de la Antártida y algunos puntos más.

    ../../../_images/antarctica_border.png

    ¿En qué se diferencia esto de tener una capa WMS?

  13. Seleccione cualquiera de las capas y notará que las herramientas de tabla de atributos y selección de entidades están habilitadas. Estas son capas vectoriales.

  14. Selecciona la capa south_poles_wfs y abre su tabla de atributos. Deberías ver esto:

    ../../../_images/poles_attribute_table.png

    Como los puntos tienen atributos, podemos etiquetarlos, además de cambiar su simbología. Aquí tienes un ejemplo:

    ../../../_images/labelling_example.png

Diferencias con capas WMS

Un Web Feature Service devuelve la capa en sí, no sólo un mapa presentado de ella. Esto le da acceso directo a los datos, lo que significa que puede cambiar su simbología y ejecutar funciones de análisis en él. Sin embargo, esto es a costa de muchos más datos que se transmiten. Esto será especialmente evidente si las capas que está cargando tienen formas complicadas, una gran cantidad de atributos, o muchos objetos espaciales; o incluso si usted está cargando un montón de capas. Las capas WFS suelen tardar mucho tiempo en cargar debido a esto.

10.2.2. moderate Follow Along: Consultas en Capas WFS

Aunque es posible consultar una capa WFS después de haberla cargado, a menudo es más eficiente consultarla antes de cargarla. De esta forma, solo pides los elementos que quieres, lo que significa que utilizas menos ancho de banda.

Por ejemplo, en el servidor WFS que estamos utilizando, hay una capa llamada countries (excluding Antarctica). Digamos que queremos saber donde está Sudáfrica de forma relativa a la capa south_poles_wfs (y puede que también la capa antarctica_country_border) que ya está cargada.

Hay dos formas de hacerlo. Puedes cargar la capa entera countries …, y luego construir una consulta como siempre una vez está cargada. Sin embargo, transmitir los datos para todos los países en el mundo y luego utilizar los datos para Sudáfrica parece un despilfarro de ancho de banda. Dependiendo de tu conexión, este conjunto de datos puede llevarte muchos minutos cargando.

La alternativa es construir una consulta como filtro incluso antes de cargar la capa desde el servidor.

  1. Habilita la pestaña WFS / OGC API Features en el cuadro de diálogo Administrador de Fuentes de Datos

  2. Conéctese al servidor que usamos antes y debería ver la lista de capas disponibles.

  3. Busque y haga doble clic en la capa countries (excluyendo la Antártida). El nombre de la capa es country_borders_excluyendo_antarctica. También puede seleccionar la capa y presionar el botón Crear consulta en la parte inferior del diálogo:

    ../../../_images/select_country_filter.png
  4. En el cuadro de diálogo que aparece, escriba la siguiente consulta SELECT * FROM country_borders_excluding_antarctica WHERE "Countryeng" = 'South Africa' en el recuadro Sentencia SQL.

    ../../../_images/country_sa_builder.png
  5. Presiona Aceptar.

  6. La expresión usada debería aparecer como el valor Sql de la capa destino:

    ../../../_images/country_filter_enabled.png
  7. Click Agregar con la capa seleccionada como antes. Solo el pais con el valor Countryeng de South Africa cargará en esa capa:

    ../../../_images/antarctica_sa.png

    ¿Notó el icono indicatorFilter junto a la capa country_borders_excluyendo_antarctica? Indica que la capa cargada está filtrada y no muestra en el proyecto todas sus entidades.

  8. No tienes por qué, pero si pruebas ambos métodos, observarás que ¡este es mucho más rápido que cargar todos los países antes de filtrarlos!

Notas de disponibilidad de WFS

Es raro encontrar un WFS con los elementos que necesitas, si tus necesidades son muy específicas. La razón por la que el Web Feature Service es relativamente raro son las grandes cantidades de datos que deben ser transmitidas para describir un elemento por completo. Por lo tanto no es muy rentable tener un WFS en lugar de un WMS, que solo envía imágenes.

El tipo más común de WFS que encontrarás será probablemente en una red local o incluso en tu propio ordenador, en lugar de en internet.

10.2.3. In Conclusion

Las capas WFS son preferibles ante WMS si necesitas acceso a los atributos y geometrías de las capas. Sin embargo, considerando la cantidad de datos que necesitan ser descargados (lo cual crea problemas de velocidad y falta de servidores públicos WFS disponibles) no es siempre posible utilizar WFS en lugar de WMS.

10.2.4. What’s Next?

A continuación, verá cómo usar QGIS Server para proporcionar servicios OGC.