Last modified 6 years ago Last modified on 09/01/11 13:13:02

Go back to the table of modules

Metadata Validator

The Metadata Validator module is responsible for checking the validity of metadata before importing or exporting it. It checks validity against their base format (such as XML or VCARD), their structure (such as LOM), the correct usage of value space (such as allowed vocabularies or date formats). This first part can all be done using existing code.

However, COMETE will develop the ability to check if a metadata follows an application profiles document, and provide a human and computer readable explanation of the non-conformities.

List of critical functionality

  • Application profile support

List of desirable functionality

  • Human AND computer readable, field specific validation results, including the severity of the nonconformity.

Implementation choices/alternatives

Existing projects

Several projects wrote validators, with varying levels of sophistication and genericity. In our case, we need much more than a yes/no answer. We need computer readable explanation of the non-conformities. A few projects to consider:

  • NORMETICs validator
  • Ariadne validator
    • About
    • Example
    • Validation Framework source code
    • Provides validation of metadata instances against predefined application profiles, for example based on IEEE LOM.
      • Checks both the syntactic and semantic validity of the instances against the used profiles.
    • Modular and multi-approach:
      • XSD schema, mainly used for structural validation of xml metadata.
      • Schematron rules
        • verifying the presence of mandatory elements.
        • checking the presence of empty attribute fields. For example, in the langstring datatype of LOM, the language of a string should be recorded in a non-empty attribute “language”.
        • enforcing inter-field dependencies, like conditional fields.
        • checking for the correct use of the allowed terms in a vocabulary.
      • validation of vcards present in the metadata with a separate vcard parser or validator.
  • Editor-centric validators:

Implementation alternatives

The main implementation alternatives are:

  • Implement validation as part of Fedora's new Enhanced Content Models.
    • REJECTED; Would require redundant validators to communicate with Metadata editor
  • Extend the Metadata editor's API to serve also as a validator
  • Perform major enhancements to Ariadne's validator
    • Most likely option

0.9.8 © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.75293 sec.)