Reusing Courses

Most of the time when a course is used to satisfy a requirement it should not also be used to satisfy another requirement. But their are exceptions.

Using all

Most plans should have access to all passed courses (specializations are an exception). For example, a minor should be able to reuse courses used in a major. Or in Math we have a faculty requirement of 10 non-math courses. That count should be independent of any courses used to satisfy the major part of the degree.

These situations are handled with the using clause on an n of requirement. For example,

all of "Computer Science" using all passedCourses {
    ...

    all of "non-math requirements" using all nonMath {
        5.0 units from nonMath
        all of using all coop {
            4 from ^PD_.*
            5 from ^COOP_.*
        }
    }
}

The using clause is followed by a course set that further specifies the courses that can be reused. The all of "non-math requirements" using all nonMath says that for the enclosed requirements, use nonMath courses (a previously defined course set) whether they were previously used or not.

Using remaining

A second option (that is seldom used) is using remaining nonMath (or some other course set). This says that only non-math courses that have not already been used should be considered for the enclosed requirements.

Default

The default, when no using clause is present, is to simply use the remaining courses from whatever set was most recently used in a using all or using remaining clause. That is, it’s what you would expect.

More details in the writer’s section