Linked Course Templates

Linked Course Templates

This article provides more "technical" information regarding linked templates. If you are looking for a tutorial on how to link templates, consider visiting the Create a Link Between Templates article in the "How-To" section of our Knowledge Base.

Linked Templates are one of the most powerful, yet sophisticated, features of Concourse. Extending the basic template functionality, linked templates give administrators the ability to "tie together" a series of template levels (e.g. institution > department > course) in such a way that content can be introduced at the appropriate level and then "pushed down" to lower-level templates with ease. In other words, the addition of and future changes to an institutional policy like Academic Integrity can be placed (and enforced) on every template with a single click.

Further, course and item permissions can be used to carry through said templates, which means you can not only make sure the content is placed and consistent on every syllabus, but you can prevent certain users from taking liberties with it. That said, it might be helpful if you review any articles related to item permissions, group permissions, and even user permissions before you attempt to create complex linked template hierarchies.


Getting Started

To begin, you should have already created at least one template (e.g. an institutional template) because if you want to link that template to another, you must clone that template. Currently, there are two ways you can clone courses in the platform: manually or via course feed. We always recommend trying an operation manually before transitioning to using feeds, but cloning via feeds can be really helpful when creating a lot of templates at once.

Manual Cloning

To manually clone a template within the Concourse platform, you would go to Create > Clone Course. Once you are on the Advanced Search page (with Criteria and Results), you can search for the template you want to clone. You'd select the appropriate template by clicking the blue "Clone" button next to the syllabus title and then you'll be directed to the "Required Information" and "Optional Information" for the new clone course. To properly create the link, you must click on the box that says "Is Template." That is the most crucial step in the entire cloning process because you cannot retroactively go back and check the box.

Cloning via Course Feed

If you are trying to create several linked templates at once, you can leverage course feeds to create several linked templates at once. Let's say you have two levels of templates: institutional and course. You could potentially have hundreds of course templates to create, and you probably wouldn't want to sit there and manually create every single course template. Rather, you can leverage the Course feed which has the parameter "CLONE_FROM_IDENTIFIER" which would allow you to clone course templates from the institutional template. To run this operation, we recommend you refer to the System Data Feeds Construction and Processing article which will walk you through how to properly create a course feed. 

You know you've linked your templates correctly when the linked item has a purple chain link button next to the item on the lower-level templates. This replaces the yellow edit and red delete buttons because you do not control that item, or certain sub-items, on the given template.



Clicking on the icon will point you to said higher-level template. If you then edit that higher-level template and return to the lower one, you will see the content has been updated in both places. You then continue to extend the lower one beyond what's already present.


Troubleshooting Linked Template Issues: Linked Behaviors

Now here's where it gets tricky: troubleshooting linked templates. There is one principle that can "throw a wrench" into your item creation or editing, and ultimately lead to troubleshooting: higher-level templates will always take precedence over the lower ones in terms of additions and deletions. It sounds simple, right? It  Let's say you have two templates: college and course. The college-level template has a course policy that says "No Cheating." The course template then has this policy and also one for calculators in the classroom. Both policies are listed under the Course Policies Item, but the information is split between the two templates. In addition, the course template also contains a course description. In this scenario, you have information housed under the same Item but the information originates on different templates, and have another item (the Course Description) activated on a lower-level template.

Since additions and deletions cascade, here's what can happen:

1) Say a new course policy is introduced for ADA at the college template. This addition will flow down to the course template.

2) Conversely, if the cheating policy is removed, it will disappear from the course template. The calculator policy on the course template will still remain.

3) However, if the course policy category as a whole is removed from the college template, it will take everything off the course template related to policies, including the calculator policy.

4) In a similar manner, if the college template has a course description added, since there is only space for a single course description item on each syllabus, it will override the description that was already in place on the course template, effectively deleting it.

Moral of the story? Be very careful when adding and deleting items from higher-level templates.


Linked Templates are excellent for syllabus development and sustainability, but there's a strong chance you don't want your live-term courses linked to syllabi on the backend. For example, let's say the spring term courses are live, but you already know new policies for the upcoming fall semester that need to be added to the Institutional Policies item. If you had the live spring term courses linked to the template hierarchy, those fall updates would also get pushed out prematurely in the spring courses when you updated the item. In most cases, you'd avoid that potential issue by "breaking" the template link. To do so, when you clone out the templates, you'll leave the "is template" box unchecked and/or update your feed files from a "1" to a "0" in the "IS_TEMPLATE" field. To learn more about restructuring feed files, refer to the System Data Feeds Construction and Processing article.

The Concourse team addresses the relationship between permissions, item behavior, and other linked template scenarios in Templates II, a regularly scheduled live webinar. If you're interested in attending training or receiving a recording of Templates II, consider emailing your Concourse team.


    • Related Articles

    • Course Templates Explained

      A course template typically refers to a syllabus that contains boilerplate language for everyone throughout an institution to adhere to. Such a document can go by many names (master syllabus, course outline, course format, etc.). Despite the ...
    • Creating Syllabi from Course Templates

      Templates can be turned into course syllabi using manual creation or through the processing of feeds. While this process remains simple, an important difference should be pointed out that makes template cloning a bit more sophisticated. Going from a ...
    • Designing Course Templates

      The Syllabus Geeks understand that creating a course template can seem like a daunting task. Never fear, we are here to help! We understand that you may have a lot of questions surrounding the creation of a syllabus template. This may be a completely ...
    • Relationship Between Templates, Courses, and Sections

      This is a very important topic for an administrator to wrap their head around as they design a template structure and then combine that with feeds to create courses.   Courses A course is the main unit of organization in Concourse. Each course: ...
    • API - Course Listing

      FYI: All lines within code blocks are numbered, regardless of whether there is more than one line of code provided. An API is available to retrieve a listing of courses stored in Concourse. This is helpful for integrating Concourse with other systems ...