Metadator: herramienta de creación automatizada de metadatos (Python)

23 de Enero de 2013

Hoy es un gran día en la corta vida de Datamadre, el primer post de un invitado! Su autor es Julien Moura quién nos presenta la herramienta que ha desarrollado para automatizar la creación de metadatos, Metadator.
Logo Metadator

La producción de los metadatos es algo indispensable para los que trabajan con datos geográficos, pero es una tarea bastante pesada y repetitiva que finalmente no esta bien hecha generalmente. Específicamente para los miembros de la Unión Europea donde la directiva INSPIRE impone muchas normas.

En el marco de mi actividad profesional en el INDECI, tuve que desarrollar una herramienta para facilitar esta parte de nuestro trabajo.

Presentación

 Lo que hace Metadator:

Parte del metadato en el formato Word  y en el formato Excel (1era pestaña)

 Desarrollado en Python, esta herramienta no hace milagro ni evita el trabajo del profesional. Solamente permite automatizar lo que puede serlo y así facilitar el trabajo para que el usuario solo tenga que focalizarse sobre lo que ninguna máquina puede hacer en su lugar: descripción de los atributos, pertinencia de las informaciones, precisiones, etc.

Todavía falta mucho para que sea perfecto, pero he pensado que podría interesar varias personas.

Funcionamiento general

  1. Metadator busca los shapes presentes dentro de la carpeta indicada por el usuario (también en las subcarpetas);

  2. Aplica el perfil de metadatos elegido por el usuario para las informaciones generales;

  3. Extrae las características de cada shape via OGR;

  4. Calcula estadísticas básicas para describir los campos atributarios (suma, promedio, mediana, frecuencia de las ocurrencias, etc.);

  5. Aplica las descripciones de los campos atributarios repetitivos;

  6. Crea los metadatos finales en el idioma y los formatos elegidos por el usuario.

Escoger la carpeta donde se encuentran los shapes

Escoger un perfil ya creado sino crear un nuevo.
Cambiar de idioma.

El programa se encuentra en 2 versiones:

1 - Versión ejecutable Windows:

Uso más fácil pero menos flexible, solo se necesita Windows y Microsoft Word.

Una vez el archivo zip extraido, hacer doble clic sobre Metadator.exe.

2 - Versión Python (script):

Uso mas flexible pero se necesitan unos requisitos y al menos un conocimiento mínimo del lenguaje Python:

Es recomendado instalar los módulos con setup ejecutables que se pueden encontrar en http://www.lfd.uci.edu/~gohlke/pythonlibs y también el paquete "Base".
Una vez extracto el archivo zip descargado, iniciar Metadator.py desde el IDE Python o el terminal Windows (puede ser mas lento):

cd rutadondeestael_archivo_descargadoextractoMetadator

python Metadator.py

Crear sus propios perfiles de metadatos

Para lenar las informaciones generales sobre los datos, Metadator se basa sobre perfiles de metadatos, aplicables después sobre varios shapes. La idea es que generalmente varias informaciones (sumario, contactos, palabras claves, etc.) son comunes a varios shapes. El programa permite crear los perfiles con la ayuda de un formulario. Así el usuario puede crear tantos perfiles como le gusta o lo necesita.

Vista a una parte del formulario

El programa viene con dos perfiles de demostración: uno en castellano, el otro en francés.

Traducciones e internacionalización

Inicialmente desarrollado en francés, el programa integra un sistema simple de internacionalización. También están incluidos 3 idiomas por defecto: francés, castellano e inglés.

Es muy fácil añadir un idioma o personalizar los textos (de la interfaz como los de los archivos exportados) del programa.

Agregar un idioma:

Vista a una parte del archivo lang_ES.xml

Los campos atributarios repetitivos

Observando que dentro de la misma actividad profesional, unos campos atributarios están casi siempre presentes en las capas de información, el programa permite facilitar la descripción de estos campos y también la coherencia global de los metadatos a la escala de una empresa o institución. Por ejemplo, en mi trabajo en Perú, siempre tengo el UBIGEO, los códigos administrativos del INEI para los lugares. También, cuando trabajo con datos extractos desde OpenStreetMap, siempre encuentro los mismos atributos. Es muy pesado siempre volver a copiar las mismas descripciones, así que Metadator permite al usuario reducir el peso de esta tarea y personalizar los campos atributarios repetitivos.

Para editar los campos:

Parte del archivo de los campos atributarios repetitivos

Ojo, los nombres de los campos tienen que hacer coincidir mayúsculas y minúsculas. Así que id e ID son dos atributos diferentes para Metadator.

Es compatible con el código html para personalizar las letras: <b>negrita</b>, etc.

Adaptación a los sistemas operativos (Mac y Linux)

Requisitos:

Descargar lo necesario con el terminal:

cd ruta/donde_quiere_instalarlo

git clone https://github.com/Guts/Metadator.git --branch alpha-unix

Uso:

Iniciar el archivo Metadator_Nux.py tomando en cuenta que no es disponible el formato Word para exportar.

Esta versión no esta mentenida. Ha sido probada con Ubuntu 12.04.

Ventana para elegir la carpeta en Ubuntu 12.04

Por venir: perspectivas del desarrollo

A pesar de un ritmo de desarrollo lento, algunas mejoras estan consideradas:

Notificación y informe finales del programa
El error indicado es voluntario para las necesidades del desarrollo.

Referencias

Mi perfil LinkedIn: http://www.linkedin.com/in/julienmoura/es

Gracias a Pierre por prestarme un poco de su blog y también por haber creado el embrión de Metadator (DataInspector).

Desarrollado con PyScripter : https://code.google.com/p/pyscripter/

Descargas

=> Versión estable en GitHub

=> Versión en desarollo en GitHub

=> Versión Ubuntu en GitHub

Twittear