wiki:MetadataImport

Metadata import module

Date 2008/10/23
Contact(s) mcoudert
Last edited Timestamp
Status draft
Assigned to release 2.3 ?
Resources Resource available / patch proposed

Overview

The purpose of this proposal is to improve existing metadata import module by supporting XML copy/past insert, XML file insert and MEF file insert.

Proposal Type

  • Type:
  • App: GeoNetwork
  • Module: User Interface, MEF module
  • Documents:
  • Email discussions:
  • Other wiki discussions:

Voting History

  • Jeroen Ticheler: +1
  • Archie Warnock: +1
  • Francois-Xavier Prunayre: +1

Motivations

In 2.2 release, only copy/paste XML is suppported for insert. There's no way to upload directly a XML file (metadata file, SLD file, WMC file, GetCapabilities file ...) or a MEF file. This improvement allows users to upload such files through a user-friendly interface (see printscreen below).

Copy / Paste insert mode Single File insert (XML, SLD, WMC...) MEF file Upload

Proposal

  • 1. A user select by radio button which type of insert he would perform
    • 1. Case "Copy/Paste": no changes, metadata.insert service called.
    • 2. Case "File Upload": the user have to choose among two file type to upload
      • mef.import service is called, a specific FileVisitor is used to parse file structure (FileVisitor is a new Interface replacing the Visitor Class)
      • 1. Case "Single File (XML, SLD, WMC...)" :
        • the user have to set parameters as in Copy/Paste case (parameters are the same).
        • once insert performs, a link on metadata inserted is diplayed (by clicking on the id of the new metadata)
        • XMLFIleVisitor is used to handle the file structure.
      • 2. Case "MEF file":
        • no parameters are diplayed. All information are in the file info.xml contained in MEF file.
        • MEFFileVisitor is used to handle MEF file structure (equivalent to the old Visitor Class).
      • In both case, user could choose for an action on import :
        • 1. No action on import (ie metadata with same UUID is already existing in db, user will receive an exception).
        • 2. Overwrite metadata with same UUID : the old one will be deleted before inserting the new one.
        • 3. Force to generate new UUID for inserted metadata (whatever the metadata existed or not in db).

As an extension, this improvement will permit to handle all other specific format to insert, just changing the user interface and adding a new class implementing the new FileVisitor interface. For instance, if the proposal concerning MEF format improvement MEFImprovement is voted, it will be easier to modify MEF module to handle this new format.

Discussion

Heikki Doeleman: I would like to propose a modification to the point about action on import. I think it would be better not to present the choice to the metadata-importing user beforehand, because I think in the vast majority of cases there will not be a clash in UUIDs.

I propose that the choice on what action to take on import is *only* presented in case of a clashing UUID, and that the user in these cases must choose to:

  • 1. Cancel the import
  • 2. Replace the existing metadata
  • 3. Merge the new and the existing metadata (or is this too confusing?)
  • 4. Generate new UUID for the new metadata

And of course never show the user an exception.

Please let me know your thoughts ?

Backwards Compatibility Issues

Risks

No specific risks highlighted.

Participants

  • francois
  • BRGM (Etienne, Pierre) / GeoSource project
Last modified 15 years ago Last modified on Dec 29, 2008, 6:46:53 AM

Attachments (5)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.