Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

By default both XML schema and Schematron validation is performed. This is configurable. To alter the validation performed on ingest add a parameter to the DOManager module configuration in fedora.fcfg:

...

If Fedora's logging level is set to DEBUG, Fedora also validates FOXML the XML object representation before committing it to permanent storage using both XSD and Schematron validation. This feature is intended to be used for testing Fedora.

Object validation

Fedora Object validation can be configured to be is carried out prior to any object modifications being committed to permanent storage - if a modification would result in an invalid object according to the configured validators, the modification is not made and an error is reported.

By default, Fedora's configuration is to perform no object validation upon modification operations.

In addition, objects can be validated on demand using the validate API method. This will validate objects according to their specification using Enhanced Content Models.

Digital Object validation is configured using Spring, in the file $FEDORA_HOME/server/config/spring/doobjectvalidator.xml.

Digital Object validation can be used to ensure that repository content conforms to the rules specified using Enhanced Content Models, which allows specification via an object's content model of XML datastream schema and relationships that should exist between objects.

To enable ECM object validation is carried outfor every modification made to an object, uncomment the relevant sections in this file.

You can define your own validators for objects by writing Java classes that implement the org.fcrepo.server.validation.DOObjectValidator interface, and then adding these to the doobjectvalidator.xml Spring configuration file.

Note
titleExtra validation will impair performance

Although performing validation of Fedora objects on every modification can be used to help ensure the integrity of your repository, adding such validation operations will incur an overhead every time an object is modified.