Table of Contents

  1. Introduction
  2. New Features and Enhancements
  3. Bug Fixes
  4. Known Issues
  5. Installation
  6. Historic Release Notes (prior releases)
  1. Introduction

    Fedora 3.0 is a major release of Fedora that introduces the Content Model Architecture among several other significant features, listed below. Several bugs have also been addressed with this release.
    NOTICE: This is a Beta release meant to solicit feedback from the Fedora user community, and is not suitable for production. For the latest production-quality release, please see the Developers Section of the Fedora Commons website.
  2. New Features and Enhancements

    The following features and enhancements have been included in this release.
    1. Introduction of the Content Model Architecture The Content Model Architecture, or CMA, has added a new system-recognized Fedora Object type, the Content Model Object. Among the improvements this architectural change provides is that operations or behaviors are now attached to objects at the content model level. The traditional "disseminator" has been replaced by the CMA functionality.

      Data objects assert their membership to a content model by adding a "fedora-model:hasContentModel" statement to the RELS-EXT datastream. This replaces the old system object property "fedora-model:contentModel". The demo objects have been updated to reflect this new way of attaching behaviors.

      See the Content Model Architecture document for more extensive information on the purpose and design of the CMA.
    2. Fedora REST API The new REST API exposes a subset of the Access and Management interfaces as a RESTful (Representational State Transfer) Web Service. Fedora Commons would like to thank MediaShelf for contributing this feature.
    3. Mulgara Support The Resource Index has been updated to support Mulgara 1.1.1 as its default triplestore. Additionally, the Resource Index now supports the use of Mulgara as a remote server.
    4. Migration Utilities The 3.0 migration utilities provide an upgrade path from prior versions of Fedora. The utilities support converting old disseminators to use the CMA and upgrading objects to FOXML 1.1. For more information on these utilities, see the Fedora Migration Guide.
    5. Relational Index Simplification With the CMA, the most complex of Fedora's Database tables are no longer necessary. This reduces the complexity of the code while also reducing the amount of time Fedora needs to add, change, and remove information in the database. It also significantly reduces the storage space requirements for the database.
    6. Dynamic Behaviors Objects may added or removed dynamically from the system, moving system checks into runtime errors. With previous releases of Fedora, Behavior Definitions had to be ingested first, followed by Behavior Mechanisms, followed by Data Objects. Now, Fedora allows the ingest (and purge) of objects in any order, regardless of type. In addition, system-recognized datastreams for Behavior Mechanisms and Behavior Defintions can now be edited in-place.
    7. Error Reporting Improvements Fedora now sends correct HTTP status codes and more user-friendly messages when API-A-LITE, API-M-LITE, and search-related errors occur. With the introduction of the CMA, these error messages also provide better detail on the reason a request failed (missing object, datastream, etc.).
    8. Multiple Owners Per Digital Object By specifying a comma-separated list, you can now specify multiple owners as the "ownerId" of Fedora Objects. The list of owners can be provided as input to your XACML policies to support more flexible policy enforcement. See the example policies for more information.
    9. Java 6 Compatibility Prior versions of Fedora would run with Java 1.5 or 1.6, but compiling was restricted to JDK 1.5. Now Fedora can be compiled with JDK 1.6 as well.
    10. Relationships API The Fedora Management interface has been extended to support the per-object assertion and retrieval of user-defined relationships in the RELS-EXT datastream. The new relationships API methods are addRelationship, getRelationships, and purgeRelationship. The Resource Index does not need to be enabled in order to use these methods.
    11. Fedora Object XML Schemas Revised With the introduction of the CMA, the FOXML and Fedora METS Extension schemas have been versioned to 1.1. This was primarily a simplification to remove disseminator-related elements. For a complete list of changes, see the changelog in the associated schema documents:
    12. Upcoming Enhancements The following enhancements are planned for completion in the final release of Fedora 3.0:
      • JMS Messaging - Integrates JMS messaging for sending notification of important events
      • Message Update for GSearch - Provides a reference implementation for using JMS notifications to update search engines
      • On-line Validation Testing - Hooks into the runtime error system to provide more meaningful error reports include conformance to content models and referential integrity checks
      • Off-line Validation Testing - Provides system operators a way to validate the integrity of part or all of their repository
      • Updated Administrative Client - Revises to support Content Model Architecture enhancements
      • Updated OAI Provider - Revises the OAI Provider to take advantage of the Content Model Architecture
      • Updated Utilities - Revises all the Fedora-provided utilities for integrate properly with the Content Model Architecture
  3. Bug Fixes

    The following bugs have been addressed for this release.
  4. Known Issues

    The following outstanding issues are present with this Beta release: Please see the Fedora Commons Bug Tracker for an up-to-date list of outstanding bugs.
  5. Installation

    For instructions on installing and upgrading Fedora, please consult the Installation Guide and the Fedora Upgrade and Migration Guide.
  6. Historic Release Notes

    Release notes for previous versions of Fedora: [2.2.1], [2.2], [2.1.1], [2.1], [2.1b], [2.0], [1.2.1], [1.2], [1.1.1], [1.1], [1.0], [0.9], [Beta 1], [Alpha 1]