Skip to end of metadata
Go to start of metadata

Contrib: Conditional Release

January 2010

Conditional Release is in QA and has been slated for release with Sakai 2.7. It is now available in Sakai's trunk code and the 2.7.x branch.

Incubation to Release (Updated 2010-01-26)





Project is being tracked in the Management/Project Coordination space



Project has institutional sponsor

Currently Rutgers and Georgia Tech


Code is in production

Currently Georgia Tech


Project has a documentation home



Project has a source code home

kernel content gradebook


Status is published

This is it.


Use cases are spelled out

See use cases below.


Use Case: Instructor can apply conditions to resources on the basis of events from the Gradebook

This works now.


Use Case: Sakai Developer can create new consumer and/or producer of conditions

Producers have yet to be broadcast to consumers.


Use Case: Site participants receive notifications when their resource becomes available

Currently, participants will receive notification too soon, or not at all


Use Case: Sakai Administrator can opt in or out of Conditional Release



Code has automated tests

a few rudimentary tests are part of the build


Project has written QA test cases

In progress: CR Testing Guide


Project known-issues are in JIRA


Project has no unresolved blocker or critical issues



Project has an owner for post-release issues

Aeroplane Software will donate the necessary hours


Service APIs have JavaDocs


Project has release-ready executive summary



Project has release-ready admin guide



Project has release-ready developer guide



Project has release-ready help files


Description of Conditional Release

Conditional Release is a feature being considered for inclusion in Sakai 2.7 which allows a worksite maintainer to specify a condition that must be met for some piece of content to be shown ("released") to other users, typically students. This image shows setting a condition in the Resources tool:

Use Cases

Instructor Can Apply Conditions to Resources on the Basis of Events from the Gradebook

The original motivating use case for Conditional Release is the ability to have resources (files, folders, etc.) become visible to students only after some Gradebook condition has been met (e.g., their grade on a particular assignment is a above or below a specified threshold).

The instructor will be able to apply conditions to a site resource in the same way that dates of availability are applied (since Sakai 2.5): the Edit Details panel of any resource will have a section for assigning a condition from the Gradebook that must be met on a student-by-student basis before the resource will be visible to the student.

The instructor will be required to select a Gradebook item from a drop-down list. All the current Gradebook items for the site will be displayed in the list.

The following Gradebook events will serve as the basis for conditional release of resources:

  • due date has passed
  • due date has not passed
  • has been released to students
  • has not been released to students
  • is included in course grade
  • is not included in course grade
  • grade is less than (some number)
  • grade is greater than or equal to (some number)
Sakai Developer Can Create new Consumers and Producers of Conditions

Once the Conditions infrastructure is in Sakai, it should be possible for a tool or service developer to create new condition consumers and producers.

Condition Producer: a service can become a condition producer by advertising to the rest of the system the information that it makes available. The Gradebook, for example, produces information about whether a particular item has been graded, and what the score is. This information can become the basis for a condition.

Condition Consumer: a service that makes sets up new conditions and responds in some way when the condition has been met. The Resources tool is a condition consumer that makes inquiries of the Gradebook (the producer), and when the condition has been met for a particular user, switches on availability of that resource for that user.

As an example of something that a developer might do, an Evaluation service could be a condition producer, sending notifications when a user completes an evaluation. A tool such as the Gradebook could consume these conditions, and only display a term grade if the student has completed an evaluation.

Sakai Administrator Can Opt In or Out of Conditional Release

As with dates of availability, conditional release will be disabled by default, so that institutions that aren't interested in it won't have to do anything to turn it off. A property in will be available to activate the conditions service and any condition producers or consumers will check the property before performing any conditions-related operations.

Site Participants Receive Notifications When Their Resource Becomes Available

The Resources tool allows site maintainers to send email notification at the time a resource is added, or when it enters its period of availability. The notifications should be sensitive to conditional release, and if configured to notify, should send the notification on a case-by-case basis, only when the resource becomes available.

Older Release Information

Available for Sakai 2.4.x

Conditional Release has been released for Sakai 2.4.x. Here is some additional information:
Installation Guide
Developer's Guide

Proposal from 2007

The original proposal document is archived here.

Table of Contents
  • No labels


  1. We (UCT) have an interest in conditional availability based on completion of course evaluations through the contrib evaluation system. This would mean presumably evaluation being a "condition provider". It's also been suggested that Gradebook could be a consumer in the sense that students couldn't see their current grades until they complete some other action.

    1. Excellent, Stephen. These are exactly the kind of use cases we intend to be able to support.

  2. Here's the pseudo activity-diagram we came up with:

  3. Sorry to jump in late in this, I did not realize such an initiative was underway.

    Another use case from the 2008 Authoring Summit:

    Using the Gradebook as a trigger is only one of the possibilities for conditional release.

  4. Hi,

    We are currently using SAKAI 2.6 and wanted to add conditional module to our environment.
    The installation guide based on version 2.4 and quite old.
    On top of the home page of the conditional module, I saw that the release for 2.7 is in QA.

    Can anyone help me on how can I install conditional on top of sakai 2.6 software?

    Also, As I see from the page, the condtional is only for resources.
    Am I right?

    I want to apply it to assignments and tests
    For example, user could not get exam1 before completing assignment1.

    Is it possible with new release?

    Thanks in advance ,

    Best regards,