Skip to content
jonathangreen edited this page May 8, 2012 · 14 revisions

Deliverable

At the end of the code sprint we would like to have the following:

  • Re-architectured Core Islandora Module
    • Core Drupal Module
    • Tuque Fedora API
    • Fedora Abstraction Layer
  • XML Form Builder
    • Updated for D7 Forms
  • Solr Module
    • Updated for D7
    • Theming Features
  • Porting Scripts
    • Script to migrate fedora objects from d6 to d7 (if necessary)
    • This may not be able to be accomplished this iteration.

These will be using Fedora 3.4.x and Fedora 3.5 on PHP 5.3.x.

Tasks

  • Create a Object Model for Islandora
    • This is an attempt to abstract the contents of an Object away from viewers. This layer would act as the "M" in a MVC architecture. Given an ID one could query the object for the interfaces it implements and then call concrete implementations of those functions.
    • For example the thumbnail interface would have a function getThumbnail. This could be implemented any way, but it would allow us to get thumbnails for objects.
    • An alternate implementation of this would use RDF for everything, so things are abstracted by RDF, where all the infrmation about hte object could be queried via RDF. These are not mutually exclusive, and the MVC object model will allow us to use RDF if we want to.
    • make sure our xml datastream is versioned
  • security
    • create security model for islandora
    • this will be based on drupals security model
    • we will use drupal to allow access to fedora items
    • this can be accomplished using an xml datastream
  • Drupal
    • create an islandora entities module
  • Islandora Core
    • tabs?
    • detailed list of content
    • make the management functions have their own page (possibly using drupal tabs)
    • port the existing code
    • add template files
    • Remove all the dead code
    • Remove all unused menu paths
    • Remove all of the plugins
    • Add hooks
      • ingest page registration
      • ingest alter
      • purge
      • add datastream
      • add datastream alter
      • purge
      • edit metadata
    • change references in the code to fedora repository
    • split much of the functionality into modules
  • xml forms
    • port code to d7
    • change the code to be compatible with the new form API
    • further improvements to metadata
  • solr module
    • take existing port of the solr module and make sure its up to date
    • add new template support

User Stories

  • An object can live in multiple collections so that the Jonathan Green object can live in two collections: AwesomePeople and Developers.
  • Objects need to have security so that only certain users and roles and access (and search for) objects and collections.
  • Security policies should be inherited, so that objects are given a reasonable policy when they are ingested.
  • I have a collection of objects that are all restricted so that only members of the institution can see them. The blackout date for this collection has expired so I need to make all the members visible to the world.
Clone this wiki locally