= GSoC 2014 Metadata for GRASS GIS maps and datasets = || Title: || '''Metadata for GRASS GIS maps and datasets'''|| ||Student Name: || Matej Krejci, [http://www.cvut.cz Czech Technical University in Prague]|| ||Organization: || [http://www.osgeo.org OSGeo - Open Source Geospatial Foundation]|| || Mentor Name: || [http://grass.osgeo.org/wiki/User:Landa Martin Landa], [http://grass.osgeo.org/wiki/User:Madi Margherita Di Leo] || || GSoC proposal: || [http://www.google-melange.com/gsoc/proposal/public/google/gsoc2014/krejcmat/5629499534213120 view proposal] || == Motivation == Current GRASS GIS offers just a poor and out-of-date administration of metadata. The goal of this project is to implement administration of metadata according to the standards of ISO 19115, ISO 19139 and to create a graphical user interface which would allow the user to operate with metadata, such as creating, updating, browsing, searching etc. == Timeline == |||| timeline from proposal ||newly proposed timeline|| ||MAY 1- 7 || "Early starts" Study ISO, INSPIRE and FGDC standards || ||MAY 7 - 14 || Getting familiar with GRASS GIS modules code. || ||MAY 14 - 19 || Design of metadata GRASS library|| design GRASS library (in Python) to read / write metadata based on ISO as flat XML files|| ||MAY 19 || Starting GoSC x|| ||MAY 19- 25 || Support of diferent metadata profiles ||design GRASS library (in Python) to read / write metadata based on ISO as flat XML files including profies (XSD validation, Inspire as the show-case)|| ||MAY 26 - JUN 16 || "Break"(Prepare for bachelor final exam) ||add support for conversion GRASS (current) metadata files <-> XML ISO metadata || ||JUN 16 - 24 || Implement basic library model for command line ||design cmd modules for reading and writing ISO-based metadata -> r.info.iso + v.info.iso (including support for conversion GRASS (current) metadata files <-> XML ISO metadata)|| ||JUN 24 - 30 || Modules functionality (searching, publishing metadata)|| design GUI for reading and writing ISO-based metadata|| ||JULY 1 - 7 || Design GUI|| design GUI for reading and writing ISO-based metadata -> g.gui.metadata|| ||JULY 7 - 14 || Connect GUI library, basic functions|| advanced metadata publishing/searching based on owslib + pycsw|| ||JULY 14 - 21 || Implementation of search function to GUI ||advanced metadata publishing/searching based on owslib + pycsw|| ||JULY 21 - 30 || Improve metadata validation using designed GUI ||advanced metadata publishing/searching based on owslib + pycsw -> testing prototype|| ||AUGUST 1 - 9 || Polishing code ||polishing code|| ||AUGUST 9 - 18 || Testing and documentation ||testing and documentation|| ||AUGUST 18 || The end of GSoC ||the end of GSoC|| == Roadmap == === Week 1 (May 23) === studied metadata and tried to find suitable python lib during last three weeks: * studied ISO 19115 and EN ISO 19119 * INSPIRE * be advised to leave out implementation of FGDC - just ISO, INSPIRE * get familiar with OWSLib and pycsw * set pycsw metadata server catalog * handled metadata by OWSLib * spent time with design lib based on automated generation of XML from XSD - failed * tested suitability of generateDS to generate python object from XML scheme (XSD) * designed library for parse GRASS GIS metadata to XML based on md. ISO * parsed metadata from: * r.info * v.info * g.proj * designed essential metadata profile for raster and vector maps (based on ISO standard) * prepared lib for new update of OWSLib that will be ready during next week. (in contact with author) * created new timeline - main changes: * create basic metadata management based on creating, editing, validating ISO. (obligatory) * create advanced management based on client-server with using pycsw. (optional)