Karuta portfolios are represented by structured trees (see STRUCTURES).
There are multiple types of Karuta trees:
- Portfolio Model
- Portfolio Instance
- Rubrics Portfolio
- Reusable Components Portfolio
- Report Script
- Batch Script
- Batch Form
A portfolio model is a tree structure that organizes resources. Resources are the elements that will contain data: data supplied to the users like instructions or files, and data supplied by the users to populate their portfolios. Karuta offers resources of many types: text fields, text editors, files, images, audio and video players, date fields, etc.
Once constructed by the designer, the portfolio model is instantiated for each user, which means that a copy of the model is created and the new tree is the portfolio for that specific user.
A portfolio instance is a copy of the model for a specific user. At the moment of instantiation (e.g., copying), roles and permissions are created for each element of the portfolio.
A rubrics portfolio contains elements that will be referenced in other portfolios, for example a competency framework or elements of a choice-box.
Reusable Components Portfolio
A reusable components portfolio is used to contain pre-built portfolio parts that will then be made available to a user through a menu. This allows users to add parts to their portfolio as needed.
A report script contains commands to select elements from one or multiple portfolios and display them with in a different layout. For exemple, building dashboards, resumes, or cohort aggregate reports. The report commands allow you to navigate through portfolios to select the elements to display. The result is displayed in an html table, the layout of which is customizable by the designer.
A batch script contains commands to automate the process of creating user accounts, portfolios, and updating information. A batch script is usually associated to a CSV file containing, for example, a list of intended users. Executing the batch script with this file would then automatically create the user accounts and their portfolios. A batch script may also be associated to a batch form.
A batch form executes a batch script for one single line, without the need for a CSV file.
A Kartua portfolio is built by adding branches to the root element, thus constructing a tree structure. The process is much like an assembly of Lego blocks. Certain branches, such as the basic Karuta elements, are predefined. Designers combine these basic elements to construct branches, and combines these branches to build complex portfolios.
User menus may also be defined, allowing the end user to add branches to their portfolio as need be (this is where the reusable components portfolio is called upon). This way the portfolio is customizable by the end user.
Models and Instances
There are two types of Karuta portfolios:
- Portfolio model — Built by the designer. The associated roles are designer and all.
- Portfolio instance — Instantiated from a portfolio model for each individual user. The associated roles are those defined by the designer in the model (plus designer and all).
The diagram below illustrates the relationship between these two types of portfolios:
The security model
- A portfolio has associated roles.
- A role has associated permissions (read, write, submit, etc.) for each of the portfolio elements.
- Sharing a portfolio is done by associating a user and a role.
Simulation of the custom roles by the designer
From the portfolio model, the designer may (and should!) simulate the various roles created for the portfolio users.