public._sqlx_migrations |
6 |
|
BASE TABLE |
public.block_feedback |
8 |
Used to link feedback to the related blocks. |
BASE TABLE |
public.certificate_configuration_to_requirements |
7 |
A join table that can be used to figure out what course modules and course instances are required to be completed to be eligible for a specific certificate. To find out all requirements one will need to query for all rows that match a certificate configuration id. Note that this is the correct table if you want a certificate to relate to a course or to courses because all courses have course modules and course instances. |
BASE TABLE |
public.certificate_configurations |
25 |
Configures how a certificate should be rendered. Can be used to change certificate background, certificate overlay, font sizes, font positions, etc. |
BASE TABLE |
public.certificate_fonts |
7 |
When renderding certificates, we will load all the fonts from this table to be available during rendering. Fonts that are not in this table will not be rendered. |
BASE TABLE |
public.chapters |
14 |
Chapters divide pages of a course. They also have a front page. |
BASE TABLE |
public.chatbot_configurations |
20 |
Tells how a chatbot on a course should behave. |
BASE TABLE |
public.chatbot_conversation_messages |
10 |
The messages in a conversation between a student and a chatbot. |
BASE TABLE |
public.chatbot_conversations |
7 |
Grops the messages in a conversation between a student and a chatbot. |
BASE TABLE |
public.chatbot_page_sync_statuses |
8 |
Tells the status of whether the content of a page has been synchronized with the chatbot backend. |
BASE TABLE |
public.cheater_thresholds |
7 |
This table stores thresholds set by the instructor, representing the maximum score or duration a student can surpass before being suspected of cheating cheaters. |
BASE TABLE |
public.code_giveaway_codes |
8 |
A code that is available in a code giveaway. A user can only receive one code from a giveaway. |
BASE TABLE |
public.code_giveaways |
9 |
With a code giveaway you can create a list of codes that can be distributed to students that complete a course module. To use the giveaway, the teacher needs to add a block to the course materil for the giveaway. |
BASE TABLE |
public.course_background_question_answers |
7 |
An answer to a background question. A single user can have only one answer to one question. |
BASE TABLE |
public.course_background_questions |
8 |
A teacher-defined extra question that gets asked from the students when they start a course. The question can be either for all students in a course or it can be only for the students that selected a specific course instance. |
BASE TABLE |
public.course_custom_privacy_policy_checkbox_texts |
7 |
Used to set the privacy policy checkbox texts in the course settings dialog when a course has a different privacy policy than all the other courses. (e.g., the Elements of AI course) |
BASE TABLE |
public.course_exams |
5 |
Links exams to courses. |
BASE TABLE |
public.course_instance_enrollments |
6 |
Tells in which of the courses many instances certain user has enrolled to. The relationship defines to which instance we should associate the student’s submissions and scores. |
BASE TABLE |
public.course_instances |
12 |
Allows teachers to use a course multiple times with different points, submissions, and enrollments. |
BASE TABLE |
public.course_language_groups |
4 |
Group of courses that have the same content but in different languages. |
BASE TABLE |
public.course_module_completion_registered_to_study_registries |
10 |
Completed course module completion registrations to study registries. |
BASE TABLE |
public.course_module_completions |
18 |
Internal student completions for course modules. |
BASE TABLE |
public.course_modules |
17 |
A module is a collection of chapters which can be used to categorise the chapters of a course. |
BASE TABLE |
public.course_specific_consent_form_answers |
8 |
Stores information about students answers to questions in consent forms |
BASE TABLE |
public.course_specific_consent_form_questions |
7 |
Stores a custom research consent questions for a specific course |
BASE TABLE |
public.course_specific_research_consent_forms |
6 |
Stores a custom research consent forms for a specific course |
BASE TABLE |
public.courses |
21 |
Collection of course materials and exercises that define a online course. |
BASE TABLE |
public.email_deliveries |
8 |
An email delivery table, which contains info about if an email has been sent to an user or if it failed |
BASE TABLE |
public.email_templates |
10 |
An email template table, which contains the email subject and content written in the Gutenberg Editor. Supports adding exercise points/completions threshold templates for course instances. |
BASE TABLE |
public.ended_processed_exams |
4 |
Helper table for listing ended exams that have been processed. |
BASE TABLE |
public.exam_enrollments |
9 |
Stores which users are enrolled in which exams and related data. |
BASE TABLE |
public.exams |
13 |
An exam is a special set of exercises with a common deadline. |
BASE TABLE |
public.exercise_language_groups |
5 |
Used to figure out which exercises are the same in different course language versions. Each page belongs to one language group though the exercises.exercise_language_group_id column. If two exercises have the same exercise language group, they are the same exercise but in different languages. For finding course language versions itself, please see the table course_language_groups. This table is not used for exercises not related to courses, like exam exercises. |
BASE TABLE |
public.exercise_repositories |
10 |
A git repository that contains exercises. |
BASE TABLE |
public.exercise_reset_logs |
9 |
Stores logs of exercise resets, tracking who reset which exercises for whom and when. |
BASE TABLE |
public.exercise_service_info |
8 |
Information that exercise service has reported. Contains for example endpoints where the functionalities of this service can be accessed. |
BASE TABLE |
public.exercise_services |
9 |
Implements an exercise type. Tasks and user interfaces unique to the exercise type are delegated to these services. |
BASE TABLE |
public.exercise_slide_submissions |
12 |
Table that groups together all individual task submissions for a single exercise slise submission. |
BASE TABLE |
public.exercise_slides |
6 |
Ordered or randomly selected part of an exercise. A slide can contain multiple individual tasks that are shown to the student at once and submitted at the same time. |
BASE TABLE |
public.exercise_task_gradings |
18 |
Stores the result of grading done by an exercise service. Either created when a user submits an answer or when we’re regrading answers. Feedback is stored either in textual form (feedback_text) or in a general form (feedback_json). |
BASE TABLE |
public.exercise_task_regrading_submissions |
8 |
Join table that tells which submissions belong in one regrading operation. |
BASE TABLE |
public.exercise_task_submissions |
10 |
A returned exercise task. The system is oblivious to the structure of the submission. Does not contain anything related to points or grading. |
BASE TABLE |
public.exercise_tasks |
12 |
Contains the specific assignment and the activity which the students complete. Assignment text has the same format as pages content.Table also contains both private and public specs. Public spec is shown to the student to display an exercise and private spec specifies how answers should be checked for correctness and is not revealed to the student.. |
BASE TABLE |
public.exercises |
19 |
Exercise is an collection of exercise tasks. The exercise itself does not contain any information on what kind of activities it contains – that information lives inside the tasks. This enables us for example to combine different exercise types or to provide different assignments to different students. |
BASE TABLE |
public.feedback |
11 |
Users can send feedback to help improve the course material. Feedback consists of written text from the user. |
BASE TABLE |
public.file_uploads |
8 |
Stores metadata regarding files uploaded to the server by users or exercise services. |
BASE TABLE |
public.flagged_answers |
9 |
Used to keep track of answers that has been flagged in peer review |
BASE TABLE |
public.generated_certificates |
8 |
A certificate generated for a student to provide proof that they have completed a given course module. |
BASE TABLE |
public.glossary |
7 |
A list of terms and their explanations. |
BASE TABLE |
public.join_code_uses |
6 |
This table is used to check if user has access to a course that is only joinable by a join code. The join code is located in courses table |
BASE TABLE |
public.mailchimp_course_tags |
8 |
Stores a custom Mailchimp tag related to a course_language_group. When a new row is added, the system automatically creates a corresponding tag in Mailchimp. This tag is assigned to all students who have given marketing consent for the associated course. |
BASE TABLE |
public.marketing_mailing_list_access_tokens |
9 |
This table is used to keep a record of marketing mailing lists access tokens for each course language group |
BASE TABLE |
public.material_references |
7 |
References to scientific publications of which teachers use in their course materials to refer to. |
BASE TABLE |
public.offered_answers_to_peer_review_temporary |
6 |
Stores the answer that was offered to a user to be peer reviewed. Used to make sure the user is likely to get the same answer to review if they reload their browser. All entries are cleaned from here after 1 hour. Also, the user will be given a different answer to review if the answer stored here no longer needs peer review. |
BASE TABLE |
public.open_university_registration_links |
5 |
Table for active completion registration links. Completion links change over time, so they need to be updated occasionally. |
BASE TABLE |
public.organizations |
8 |
A unit that organizes and manages courses e.g. University of Helsinki, Department of Computer Science. |
BASE TABLE |
public.other_domain_to_course_redirections |
6 |
Allows to redirect other domains than the site’s main domain to specific courses. For example, For example https://example-course.mooc.fi could redirect one to https://courses.mooc.fi/org/uh-cs/courses/example-course. |
BASE TABLE |
public.page_audio_files |
6 |
An audio file can be played on a course material page. This table stores data regarding files uploaded to any page by teachers. |
BASE TABLE |
public.page_history |
10 |
Contains all past and current revisions of each page’s content. |
BASE TABLE |
public.page_language_groups |
5 |
Used to figure out which pages are the same in different course language versions. Each page belongs to one language group though the pages.page_language_group_id column. If two pages have the same page language group, they are the same page but in different languages. For finding course language versions itself, please see the table course_language_groups. This table is not used for pages not related to courses, like exam pages. |
BASE TABLE |
public.page_visit_datum |
21 |
An anonymous piece of data used to count the number of visitors that has viewed a page. |
BASE TABLE |
public.page_visit_datum_daily_visit_hashing_keys |
5 |
Stores daily rotated keys used for hashing the anonymous identifiers in page_visit_datum. The key for the day is permanently deleted the next day. |
BASE TABLE |
public.page_visit_datum_summary_by_courses |
14 |
Holds an aggregate of page view stats for a whole course for a given day. Can be also used to count all visitors to a course if you sum visits from all combinations of columns (including null values). |
BASE TABLE |
public.page_visit_datum_summary_by_courses_countries |
9 |
Holds an aggregate of page view stats for a course and country for a given day. If someone visits any page on a course, they will be counted in this stat. Can be also used to count all visitors to a course if you sum visits from all countries. |
BASE TABLE |
public.page_visit_datum_summary_by_courses_device_types |
12 |
Holds an aggregate of page view stats for a course and differnet types of devices for a given day. For example, this table can be used to figure out what browsers people are using on the courses usually. |
BASE TABLE |
public.page_visit_datum_summary_by_pages |
9 |
Holds an aggregate of page view stats for a given page for a given day. Can be also used to count all visitors to a page if you sum visits from all combinations of columns (including null values). |
BASE TABLE |
public.pages |
17 |
A web page that either contains course material or information about a course. The content of the page is stored in the content field as as an array of blocks that have to be rendered before showing to users. Each page has a unique URL which can be customized if necessary. |
BASE TABLE |
public.partners_blocks |
6 |
A partners block is a custom content block displayed across all pages of a course, positioned directly above the site footer. This block showcases partner logos and links, providing easy access to relevant partner sites. The partners_blocks table stores the content data for this block. Content is created and managed through the Gutenberg Editor. |
BASE TABLE |
public.peer_or_self_review_configs |
13 |
Collection of settings and peer review questions that users have to answer to evaluate each others’ answers. |
BASE TABLE |
public.peer_or_self_review_question_submissions |
8 |
Submission for an individual question of a peer review. |
BASE TABLE |
public.peer_or_self_review_questions |
10 |
Question that is a part of a peer review. |
BASE TABLE |
public.peer_or_self_review_submissions |
9 |
User made peer review submissions. |
BASE TABLE |
public.peer_review_queue_entries |
11 |
Table for queueing up for peer reviews. Once user has given enough peer reviews, they will get added to this queue where additional peer reviews given will increase their own priority of receiving peer reviews. |
BASE TABLE |
public.pending_roles |
9 |
A role that will be added for a user once they login to the system. Limited to course and course instance roles for security reasons |
BASE TABLE |
public.playground_examples |
8 |
|
BASE TABLE |
public.privacy_links |
7 |
This table stores custom privacy links for specific courses. By default, a generic privacy link is displayed in the website footer, but adding rows to this table allows overriding the default link with course-specific privacy URLs. |
BASE TABLE |
public.proposed_block_edits |
10 |
A suggestion to change the contents of a single block, part of some set of proposed edits to a page. |
BASE TABLE |
public.proposed_page_edits |
8 |
Concrete suggestions to improve the contents of a single course material page sent in by students, which can be automatically applied. Consists of one or more edits to individual course material blocks. |
BASE TABLE |
public.regradings |
10 |
A collection of submissions that will be graded again in the background. Created either by request from teachers or when we have edited exercise task specifications. |
BASE TABLE |
public.rejected_exercise_slide_submissions |
6 |
If an exercise slide submission is rejected, the submission is stored here. Rejections happen usually when there is some bug in the exercise service. This data if used for diagnosing problems. |
BASE TABLE |
public.rejected_exercise_task_submissions |
6 |
If an exercise task submission is rejected, the submission is stored here. Rejections happen usually when there is some bug in the exercise service. This data if used for diagnosing problems. |
BASE TABLE |
public.repository_exercises |
9 |
An exercise that corresponds to an exercise in a git repository. |
BASE TABLE |
public.roles |
11 |
Gives users permissions to perform actions in the system. Roles can also be related to courses and organizations so that each organization and course can have its specialized roles. If course_id is defined, the role is related to a course, if organization_id is defined and course_id is not defined, the role is related to an organization. Otherwise the role is global. |
BASE TABLE |
public.student_countries |
7 |
This table stores the country of each student in a course. |
BASE TABLE |
public.study_registry_registrars |
6 |
Authorized third parties that can access course module completions for study registration purposes. |
BASE TABLE |
public.suspected_cheaters |
9 |
Contains a student that are suspected of cheating because they meet the cheating requirement (i.e. score > threshold && duration > average_duration). |
BASE TABLE |
public.teacher_grading_decisions |
10 |
Keeps track of teacher decisions regarding answers with notice if is suspected of plagiarism. Detailed information on the answer can be found from user_exercise_state |
BASE TABLE |
public.url_redirections |
7 |
A url redirection is typically created when a page is moved. The redirection will be used to redirect old links to the new location. If there’s a conflict with a page url and a redirection, the page will win the conflict. |
BASE TABLE |
public.user_course_instance_exercise_service_variables |
10 |
A variable is a record that an exercise service can save for a specific user that will be available in all the exercises that use the same exercise service in the future. An exercise service could use this for example to remember some data that user has inputted later on – for example it could remember the user’s name or it could remember a link to a picture that the user has uploaded. |
BASE TABLE |
public.user_course_settings |
7 |
User setting for a language version group of courses. |
BASE TABLE |
public.user_details |
7 |
Contains the details of user accounts such as their email, names, etc. It is not possible to soft delete these records – only hard deletes are supported in this table. |
BASE TABLE |
public.user_exercise_slide_states |
8 |
Part of user a exercise state, keeps track of the state of a single exercise slide. |
BASE TABLE |
public.user_exercise_states |
13 |
Keeps track of state related to a user and to an exercise. Each course instance run has their own entries in the table. It is the source of truth for activity status, points etc. |
BASE TABLE |
public.user_exercise_task_states |
7 |
Part of user a exercise state, keeps track of the state of a single exercise task. |
BASE TABLE |
public.user_marketing_consents |
11 |
This table is used to keep a record if a user has given a marketing consent to a course |
BASE TABLE |
public.user_research_consents |
6 |
Stores information whether a student has consented to participate on research done on courses |
BASE TABLE |
public.users |
6 |
Either students, teachers or staff. |
BASE TABLE |