Submit a Ticket My Tickets
Login  Sign up

RULES: Setting Up Rules

Table of Contents

Section Rules
Custom Section Rules
Meeting Pattern Rules
Related Articles 


  • Coursedog allows admins to create rules for Department Schedulers to abide by.

  • Rules can be categorized as either “Section Rules” or “Meeting Pattern Rules”.

  • Section Rules include default rules such as “Can Sections be submitted with No Instructor” or “Can Sections be submitted with No Meeting Pattern”, while Meeting Pattern Rules involve the distribution of sections across time.

  • Users can additionally build Custom Section Rules to enforce institution-specific policies.


Section Rules

Overview | Default Rules | Creating Filters | Rule Exceptions


PATH: Rules > Section Rules

  • Section rules ensure that individual sections are scheduled according to your guidelines.

  • You can build rules based on section, course, instructor, room, term, and meeting data. 

  • Conflicts will display in the Section Dashboard and relationships modal.


Default Rules

Coursedog comes loaded with default rules that have been prebuilt into the Coursedog platform. Each of these rules can be turned on or off at any time by an administrative user. Administrative users may additionally customize an appended rule violation message for default rules. The below table outlines all default rules:

Default Rules


Room Blocked Out Time Conflict

A section is scheduled in a room during one of the room’s blocked-out times.

Building Blocked Out Time Conflict

A section is scheduled in a building during one of the building’s blocked-out times.

Double Booked Instructor

An instructor is teaching two courses on the same day and time.

Overlapping Meeting Patterns

Two of the meeting patterns for a section overlap with one another.

Double Booked Room

  • A course section is using a room that is booked by another course section on the same day and time.

  • This rule does not factor in exam meetings, which has a separate rule (see below).

No Meeting Pattern

  • A course section has no meeting patterns.

  • In Banner, you do not have to have a meeting pattern, so you can turn this rule off. If a meeting pattern is required in Banner (e.g. for Independent Studies), Banner requires a meeting pattern row that is associated with the assigned instructor(s). However, it does not have to have any meeting data. 

No Instructor

A course section has no instructor(s) assigned to it.

No Room

A course section has no room(s) assigned to it.

Double Booked Exam Room
  • An exam meeting is using a room that is booked by another exam meeting.

  • This rule only compares exam meetings; it does not factor in regular section meetings.

Room Capacity Lower Than Enrollment Capacity

The room capacity is lower than the maximum enrollment capacity of the course. Note: The preferred room capacity can be larger than max enrollment.

Non-Standard Meeting Pattern

A course section is not using the standard meeting pattern.

Double Booked with Event (Specifically for Events Management Customers)

Identifies scheduling collisions with rooms currently scheduled in the Event Scheduling platform. This rule does not take into account date exceptions and conversion dates.

Relationship Conflict

A schedule breaks its relationship guidelines with another section.

Credit Range Conflict

A section is assigned a specific amount of credit hours that is outside of the allowed range.

Allowed Section Type Conflict

Checks if a section type assigned in Academic Scheduling is allowed based on the course's curriculum data. In Coursedog's Curriculum platform, each component for a course represents a section type.

Approved Courses Conflict

Checks if an instructor is assigned to a course that is not on their instructor approved courses list. For more on associating approved courses with an instructor’s profile, see here

Instructors Without Meetings

This is valuable for institutions for which their SIS can only assigned instructors as a child of a section meeting . This rule checks for sections with instructors but without meetings and can prevent invalid payloads from being sent through the integration.

Multiple Primary Instructors

Primarily for Banner clients. This rule checks for sections with two or more instructors where Role = Primary.

Primary Instructor Assigned to Multiple Session IndicatorsFor Banner clients only. This rule checks to see if a primary instructor is assigned to more than one session indicator. 
Session Indicators Not Set On MeetingsFor Banner clients only. This rule checks to see if a session indicator has been set for meetings.
Instructor Assigned to Invalid Session IndicatorFor Banner clients only. You can learn more about this rule here.

Edit Section Type With Meetings

Primarily for Banner clients. This rule checks for when users edit a section's section type when there are meetings on the section. NOTE: Since this rule only applies when a user makes a change, this rule can only be detected in the section modal and won't show up in any static conflict reports.

Edit Part Of Term With Meetings and Enrollment

  • Primarily for Banner clients. This rule checks for when users edit a section's section type when there are meetings on the section. 

  • Since this rule only applies when a user makes a change, this rule can only be detected in the section modal and won't show up in any static conflict reports.

  • Since this rule checks if the section type field was edited, dynamic actions that are set up on the section type field may inadvertently trigger this rule. Please avoid setting up actions that dynamically change the section type field if this rule is on. 

Allowed Buffer Between Sections

This rule detects when two sections assigned to the same room do not have enough of a buffer between them. The minimum buffer value can be customized. Online rooms are ignored by this rule.


Creating Filters

Overview | How Filters Work | How To Create Filters
Using Filters to Compare Value | Editing Filters | Additional Notes


Filters are a critical component of section rules because they are the building blocks for both exempting sections from rules and creating custom rules. Refer to this section for guidance on creating filters for both. 


How Filters Work

  • Filters contain conditional statements that define when a section matches the filter.

  • You can create filters based on values (including “sum does not equal”, “sum is greater than", “greater than”, and “less than”). 
    • Sum is greater than will evaluate against a number field that has multiple values (such as Meeting Contact Hours, where we sum the value across all meetings).

    • We don’t support Greater Than and Less Than comparison filters for Section Numbers due to complexities with the logic (the way schools treat section numbering is varying, unique, and non-standardized).

  • The “Is Edited” filter checks if a field was changed. 
    • This filter is only triggered when editing an existing section, and not when creating a new section. 

    • Dynamic actions that modify the value of a field can trigger an “Is Edited” field. Keep this in mind when building out rules and actions.

  • When creating filters based on “Days (Section Field)", note that this filter uses “and” logic. 

    • In other words, if you create a filter that says “contains S,M,T,W,R,F,S”, a given section has to have Meeting Patterns where ALL of these days are used and NOT just one of those days. 

    • For example: This will work if a section has 7 separate Meeting Patterns each having a different day, or 1 Meeting Pattern which has all of these days.

  • All fields in the drop-down menu indicate the source of the field (in parentheses).

  • Available fields come from: Course Template, Section Template, Instructor Template, Room Template, or Term Object. In the below screenshot, for example, the “Department(s)”, “Subject Code”, “Course Number”, and “Files” fields all come from the Course Template.

    • Note that you cannot do direct comparisons between data from different entities (i.e. you could not do a comparison between a section and course field directly).

    • Some exam meeting fields from the section are not available as filters.

How To Create Filters

Step 1

  • Click on the filters button on the top right to see the filters page. 

  • This shows all filters in the system.

Step 2: Click on the “+ Filter” button on the top left.


Step 3

  • Add fields to build the filter. 

  • You can add multiple fields and use the “and/or” dropdown to determine if one or both conditions must be met. 

  • Ensure you are selecting the correct reference input; selecting the wrong reference input would lead to the rule not being triggered appropriately.

  • Click the alternating blue arrows to toggle between “Use Freeform Input” (to manually input a value) and “Use Field Select” (to build a comparison with another field). 

Step 4

  • Once you build the filter, select “save”.

  • The new filter will now be present in the drop-down options beneath “Exemption Filters” as well as “Filters” (when creating a custom rule). 


Using Filters to Compare Value

  • As indicated above, filters can be used to create rules that check if one value in a section is greater than another value.

  • Use the alternating blue arrows to “Use Field Select”. 

  • As shown in the below example, "Term Start Date", "Term End Date", "Part of Term Start Date", and "Part of Term End Date" can be used as dynamic filter options when building filters for rules.

Editing Filters

To edit a filter, simply click on the filter in the table; this will open the “Edit Filter” modal.


Additional Notes

  • If you use duplicative naming conventions for fields from the source, this may potentially result in issues when setting up the filter. For example, if you are using the Meetings Pattern Start Date and Section Start Date fields in your Section Template, you should avoid calling both "Start Date" in order to make the distinction intelligible and enable users to build filters more effectively. 

  • If you are creating a filter that keys off of a “Yes/No” field type, and you want to set up a rule that is triggered when the user selects “Yes” (or “No”), set up the filter as follows: "[Field Name]...Contains...True" (or “False”). There is no need to use dynamic filter fields for this use case.


Rule Exceptions

Overview | Excluding a Department from a Rule | Excluding Specific Sections from a Rule
Exempting Sections from Rules | Excluding Specific Instructors from the Approved Courses Conflict
Allowing Rooms to be Double Booked
 | Custom Section Rules


  • Rule exceptions can be used to exclude specific departments or sections from a rule that is not applicable. For example, sections that are taught online should not be flagged by the “No Room” rule. 

  • Rule Exceptions can only be added to a section once it has been created. If a section has not yet been created, or is pending a workflow approval, a rule exception cannot be added to it.

Excluding a Department from a Rule

To exclude a department from a rule, simply select the department from the “Exempt Department(s)” drop-down.


Excluding Specific Sections from a Rule

  1. Build a filter (see “Creating Filters” above).

  2. Select the relevant exemption filter from the “Exemption Filters” drop-down.

Exempting Sections from Rules

  • You can exempt sections from rules via a status within the rule editor. This field allows users to define status exemptions to rules. 

  • Exempting a section from a rule means that even if the section is in violation of the rule, the rule will not be flagged. It will not however prevent the section from being included in rule validation for other sections that are not exempted.

Excluding Specific Instructors from the Approved Courses Conflict

You can exempt specific instructors from the ‘Approved Courses Conflict’ rule based on Instructor Role (section field). This filter auto-populates with the values specified for Instr. Role within Instructors Advanced Settings in the Section Template.

Allowing Rooms to be Double Booked

You may run into instances where rooms are meant to be Double-Booked. In this case, a rule can be created with a filter to exclude all rooms so as to not generate conflicts. 


Step 1: Be sure to select the correct exemption filter.  


Step 2: Set up your filter using "Or" instead of "And", as shown below.


Custom Section Rules

Overview Creating Custom Rules | Sample Custom Rules
Required Rule Field | Required Rule Violation | Credit Range Conflict Rule | Testing Rules |  Additional Note


  • Custom rules can be built to meet the specific needs of your institution.

  • They should not include any of the default rules that come delivered with Coursedog.

  • Custom rules are made up of filters, and those filters are made up of fields/conditions. Additionally, each rule has various settings that institutions can define to best match their needs. 

  • Every custom rule can contain one or multiple filters; and every filter can contain one or multiple fields, all connected by either "and" or "or". 


  • Filters are used to identify sections that should be flagged as violating a rule.

  • The filters screen contains a list of all of the attributes that a section may have.

  • Individual filters may be reused by many tests or rules in many combinations.

  • If custom filters are created that reference meeting time fields, the filter logic will be applied to a combination of all the meeting’s within a section. The filter logic does not go row by row if a section has multiple meetings.




  • You can define settings for each rule.

  • These settings help determine what term(s) and department(s) to look at, and they control what will happen to sections that violate the rule.

  • Available settings give you a way to define exempt departments, exempt sections, allowed phases, relevant terms, applicable filters, and more.

Allowed Phases & Relevant Terms

You might wish to make certain rules term and/or phase specific. This has several potential use cases, including: 

  • You only want the no instructor or the no room rules to show up during later phases, as they may not assign instructors or rooms during section creation and do so during a later phase.

  • You want some rules to apply only to summer

Creating Custom Rules

  • You can get step-by-step guidance in-app to help you create a custom section rule. To activate a guided walk-through, navigate to Scheduling > Rules > Section Rules > + New Rule. If the flow doesn’t automatically begin when you click “+ New Rule”, look for it in the “In-App Guides” widget on the right-hand side of your screen.

  • Otherwise, follow the steps outlined below.

Step 1: To create a custom rule, navigate to the Section Rules page. This will show all custom rules currently in the system, and allow you to add new rules or edit existing ones. 


Step 2: Select “+ New Rule”.



Step 3: 

  • In the modal that pops up, you may name your rule, select relevant filters, and determine the message that appears when a rule violation is detected.

  • You may also designate exempt departments and relevant terms. 

  • You may decide the consequence of a rule violation through the “On Failure” field. You may wish that users violating the rule simply receive a warning before submitting their schedule, that they go through an approval process or workflow, or that none of the above happens (“Off”).

Sample Custom Rules

Here are a couple examples of rules your institution can put into practice, along with the filters that will help you build them.


Combined Max Enrollment Must Be Greater than 0

Required Fields

  1. Relationship Combined Max Enrollment (Section Field) → Less Than → 0

  2. Relationship Combined Max Enrollment (Section Field) → Is → 0


Screenshot of Filter

Multiple Professors May Not Have Role Set to Primary

Required Fields

Instr. Roles (Section Field) → Has More Than One Of → Primary


Screenshot of Filter

Instructor Percentages Exceed 100


  • This rule is useful if you want to ensure that when there are multiple instructors assigned to a section, their instructor percentages do not exceed 100%.

  • This rule will be in the baseline for new Banner customers. 

    • This does look across instructors, but we cannot enforce that we don’t exceed 100 PER session indicator.

    • Ensure that the individual values don’t exceed 100 (that’s what Banner will actually reject, the sum is just a business rule).

Required Fields

Instr. Percentage (Section Field) → Sum Is Greater Than → 100

Screenshot of Filter

Required Rule Field

For each rule in scheduling, there is also a "Required Rule" field that can be used to specify if the rule must be resolved before a user can save a section or submit a section change request for that section. For the required rule setting to take effect, the "On Failure" setting must be set to either "warning" or a "workflow." If "On Failure" is set to "Off", then the required rule setting will be ignored.


Required Rule Violation

In the section editing modal, a required rule violation will show up with a red banner:


Additionally, users will see that the "Save Section" button has been disabled with the following message:


This restriction will also apply to section change requests as well, as a user will not be able to submit a section change request with such errors (shown below).


Credit Range Conflict Rule

  • The Credit Range Conflict Rule is triggered when a section is assigned a specific amount of fixed credit hours that is outside of the allowed range defined at the parent course level. 

  • This rule is most common with Banner/PeopleSoft schools, as those SIS systems allow for courses to have a range of allowed values for certain credit fields (including credit hours, contact hours, billing hours, lecture hours, lab hours, and workload hours).

If a user sets the section's fixed Credit Hours to a value that is outside the range allowed at the parent course level, the following warning will arise:


Testing Rules

PATH: Academic Scheduling > Rules > Section Rules > Select Rule (Opens “Edit Rule” Modal)

  • Testing your rules will help you see issues across departments.

  • To test a rule, navigate to the above path and click “test rule” at the bottom of the “edit rule” modal. 

  • In order to only see issues relevant to your current planning period, make sure to select the correct term.


Additional Note

  • If filtering on instructor data when multiple instructors are assigned, keep in mind the rule does not check against a single instructor but rather aggregates the data for both. So if you create a rule with two conditions, and Instructor A violates one condition, and Instructor B violates the other – but neither instructor violates both conditions – you will still receive a rule violation notice.

  • The same logic applies to meetings; in other words, the rule will treat filters for meeting fields on sections with multiple meetings the same way (by applying the filter to an aggregate of the data, instead of to each meeting individually).


Meeting Pattern Rules

Overview | Attribute-Based Rule | Time-Based Rule
Switching Between Attribute-Based and Time-Based Rules 


Meeting Pattern Rules are used to identify the overuse of meeting patterns during certain times of the schedule. An example of a meeting pattern rule (shown below) is that no more than 20% of sections can be scheduled during Mon, Tue, and Wed from 8:00 AM to 10:00 AM. There are two types of Meeting Pattern Rules: attribute-based and time-based.


Attribute-Based Rule

An attribute-based rule counts the number of meeting patterns based on the attributes a meeting pattern has. The most common example is counting the number of primetime meeting patterns in a schedule.


Time-Based Rule

A time-based rule counts the number of meeting patterns within a certain time frame.


Switching Between Attribute-Based and Time-Based Rules

  • To switch between attribute-based rules and time-based rules, click on the arrow button to the right of the rule name.

  • Meeting Pattern Rules apply to whole departments and can display a warning for a department scheduler when they are violated, which will appear under "Meeting Pattern Conflicts" when a Department Scheduler is validating or submitting their schedule. 

  • The percentage for the “Contained” column values is calculated by dividing the number of meeting patterns meeting the rule condition by the total number of meeting patterns. This calculation is also displayed in the “Ratio” column.

  • Department Schedulers will still be able to submit schedules that have Meeting Pattern Rule warnings, as long as section conflicts are cleared. 

  • Meeting Pattern Rule violations may not trigger a specified workflow given that these rules take into account section activity across all departments (i.e. they are based off of an aggregate number), hence no individual department should be submitting a workflow for them when validating/submitting their schedule.


Related Articles

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.