Esta vez vamos a tratar de introduciros en el mundo del trabajo con listas dentro del software FME. Muchas veces elegimos un camino demasiado largo para llegar a nuestra solución final, cuando muchas veces el atajo sería trabajar con listas. Esto es, porque muchas veces, ni siquera se sabe qué es una lista y, mucho menos, usarla en FME. En el curso de la Asociación Geoinnova vemos ejemplos de cómo se trabaja con este tipo de elementos y hoy veremos una pequeñas introducción a las mismas.
Así pues vamos a aprender conceptos relacionados con los atributos de la lista y vamos a ver cómo usar los atributos de la lista para que se simplifique el trabajo con múltiples valores de atributo.
¿Qué es una lista? ¿Por qué podrías usar uno?
Las listas están en todas partes en FME. Existen 15 transformadores que están dedicados a la manipulación de listas (y algunos más en el FME HUB), y más de 80 transformadores pueden producir listas. Algunos formatos también admiten estructuras de tipo de lista, especialmente XML y JSON. Utilizando los transformadores y la funcionalidad de FME, las listas pueden construirse manualmente, crearse automáticamente mediante un transformador, crearse mediante algunos formatos o explotar para que haya atributos de valor único. Normalmente los transformadores crean una lista automáticamente como parte de la salida de su proceso particular, generalmente cuando los atributos de varias entidades diferentes se agrupan en una sola entidad.
Pero, ¿Qué es una lista? Las listas permiten que un atributo almacene más de un valor de forma estructurada. Por ejemplo, un campo de texto genérico llamado FRUITS puede almacenar un valor como «Apple, Orange, Pear» pero no se puede dividir fácilmente en sus partes constituyentes «Apple«, «Orange» y «Pear«. Aquí es donde sobresale un atributo de lista. Si el mismo atributo se estructurara como una lista, podría desglosarse en:
El número representa el lugar (o índice) del valor (o elemento) dentro de la lista. Dentro de esta estructura, las listas se pueden reorganizar, explotar en partes individuales, analizar estadísticamente o contar de acuerdo con el número de elementos, por nombrar algunas opciones.
En general, hay dos tipos de lista, simple y compleja. Una lista simple es como la de arriba, FRUITS. Pero, ¿y si tenemos tanto el nombre común como el nombre científico? Entonces probablemente tendríamos una lista compleja:
En la mayoría de los casos, el comportamiento en los transformadores de lista es el mismo.
Transformadores para trabajar con atributos de listas
Una vez que tengamos una lista, hay varios transformadores disponibles para manipularla. Estos se pueden usar para crear, manipular, transformar y analizar listas. Las listas se crean en FME con una amplia gama de transformadores.
Los diez principales transformadores de la lista de transformadores de manipulación (en orden de popularidad) son:
- ListExploder
- ListIndexer
- ListConcatenator
- ListSorter
- ListBuilder
- ListElementCounter
- ListSearcher
- ListDublicateRemover
- ListSummer
- ListRangeExtractor
Si quieres conocer más a cerca de cómo utilizar estos transformadores y las listas en FME Desktop, matrículate en nuestro curso.
Autor: Carles Martí
¿Quieres comentarnos algo? Adelante!