# Learning Environment Organization

## Purpose and potential use-cases <a href="#interactionsessions-purposeandpotentialuse-cases" id="interactionsessions-purposeandpotentialuse-cases"></a>

The purpose of this mart is to associate courses and enrollments in courses (both course\_offerings and course\_sections) with the hierarchy of LMS accounts, which we call *learning environment organizations* in the UDP.

Use cases can include provisioning and permissions in other reporting tools. For example, if users have operational needs to see all UDP data associated with a particular LMS account, joining this mart into analyses will surface the appropriate account hierarchies and enable pivoting.

There are two marts: *mart\_course\_offering.learning\_environment\_organization* and *mart\_course\_section.learning\_environment\_organization.* The former mart captures the LMS account hierarchy of a course offering, while the latter part captures the LMS account hierarchy of a course section.

## BQ Prod Dataset Location <a href="#interactionsessions-bqproddatasetlocation" id="interactionsessions-bqproddatasetlocation"></a>

mart\_course\_offering

mart\_course\_section

## Interactive Mart Dependency Diagram <a href="#interactionsessions-interactivemartdependencydiagram" id="interactionsessions-interactivemartdependencydiagram"></a>

The following visualization shows the construction of this data mart defined in the [UDP marts](https://gitlab.com/unizin-community/unizin-data-platform/marts) repository. More information on the repository and diagram can be found on [this marts page](/products/data-and-analytics/unizin-data-platform/data-stores/data-marts.md).

{% hint style="info" %}
[Click here to open the interactive chart.](https://assets.public.unizin.org/udp-marts/mart/mart__course_offering__learning_environment_organization.svg)
{% endhint %}

<figure><img src="/files/v4CvxCTwSuWdFRPqsQ7F" alt=""><figcaption><p>mart_course_offering.learning_environment_organization</p></figcaption></figure>

## Schema <a href="#interactionsessions-schema" id="interactionsessions-schema"></a>

### Mart/course\_offering/learning\_environment\_organization <a href="#interactionsessions-mart-course_offering-interaction_sessions" id="interactionsessions-mart-course_offering-interaction_sessions"></a>

<table data-full-width="true"><thead><tr><th width="301.33333333333337">Field</th><th width="182">Type</th><th>Description</th></tr></thead><tbody><tr><td>udp_course_offering_id</td><td>INTEGER</td><td>The UDP ID of the course offering.</td></tr><tr><td>lms_course_offering_id</td><td>STRING</td><td>The LMS ID of the course offering.</td></tr><tr><td>udp_person_id</td><td>INTEGER</td><td>The UDP ID of the person.</td></tr><tr><td>lms_person_id</td><td>STRING</td><td>The LMS ID of the person.</td></tr><tr><td>udp_learning_environment_organization_id</td><td>INTEGER</td><td>The UDP ID of the learning environment organization associated with the course offering.</td></tr><tr><td>lms_learning_environment_organization_id</td><td>STRING</td><td>The LMS ID of the learning environment organization associated with the course offering.</td></tr><tr><td>academic_term_name</td><td>STRING</td><td>The name of the academic term, i.e. <em>Fall 2020.</em></td></tr><tr><td>academic_term_start_date</td><td>DATE</td><td>The start date for the academic term.</td></tr><tr><td>course_offering_title</td><td>STRING</td><td>The title of the Course offering, i.e. <em>Linear Algebra.</em></td></tr><tr><td>course_offering_start_date</td><td>DATE</td><td>The start date of the Course offering.</td></tr><tr><td>course_offering_subject</td><td>STRING</td><td>The subject of the Course offering, i.e. <em>MATH.</em></td></tr><tr><td>course_offering_number</td><td>STRING</td><td>The number of the Course offering, i.e. <em>310.</em></td></tr><tr><td>course_offering_code</td><td>STRING</td><td>The code of the Course offering, i.e. <em>MATH 310.</em></td></tr><tr><td>instructor_display</td><td>STRING</td><td>An array of all the instructor’s names for the Course offering written as a string.</td></tr><tr><td>instructor_name_array</td><td>ARRAY&#x3C;STRING></td><td>An array of all the instructor’s names for the Course offering.</td></tr><tr><td>instructor_email_address_display</td><td>STRING</td><td>An array of all the instructor email addresses for the Course offering written as a comma-separated string.</td></tr><tr><td>instructor_email_address_array</td><td>ARRAY&#x3C;STRING></td><td>An array of all the instructor email addresses for the Course offering.</td></tr><tr><td>person_name</td><td>STRING</td><td>The name of the person.</td></tr><tr><td>role</td><td>STRING</td><td>The role of the person in the Course offering, i.e. <em>Student, Teacher.</em></td></tr><tr><td>role_status</td><td>STRING</td><td>The latest <a href="https://docs.udp.unizin.org/tables/ref_role_status.html">role status</a> of the person in the course offering</td></tr><tr><td>enrollment_status</td><td>STRING</td><td>The latest <a href="https://docs.udp.unizin.org/tables/ref_enrollment_status.html">enrollment status </a>of the person in the course offering</td></tr><tr><td>name</td><td>STRING</td><td>The name of the learning environment organization</td></tr><tr><td>depth</td><td>INTEGER</td><td>The number of levels from the root learning environment organization</td></tr><tr><td>status</td><td>STRING</td><td>The status of the learning environment organization from the LMS.</td></tr><tr><td>parent_learning_environment_organization_id</td><td>INTEGER</td><td>The UDP ID of the learning environment organization directly above the learning environment organization in scope, if it exists.</td></tr><tr><td>grandparent_learning_environment_organization_id</td><td>INTEGER</td><td>The UDP ID of the learning environment organization two levels above the learning environment organization in scope, if it exists.</td></tr><tr><td>root_learning_environment_organization_id</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has no parent. Depth = 0</td></tr><tr><td>root_learning_environment_organization</td><td>STRING</td><td>The name of the learning environment organization that has no parent. Depth = 0</td></tr><tr><td>sub_learning_environment_organization_id_1</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 1 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_1</td><td>STRING</td><td>The name of the learning environment organization that has depth = 1 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_2</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 2 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_2</td><td>STRING</td><td>The name of the learning environment organization that has depth = 2 in the hierarchy of the learning environment organization in scope, if it exists</td></tr><tr><td>sub_learning_environment_organization_id_3</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 3 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_3</td><td>STRING</td><td>The name of the learning environment organization that has depth = 3 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_4</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 4 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_4</td><td>STRING</td><td>The name of the learning environment organization that has depth = 4 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_5</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 5 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_5</td><td>STRING</td><td>The name of the learning environment organization that has depth = 5 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_6</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 6 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_6</td><td>STRING</td><td>The name of the learning environment organization that has depth = 6 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_7</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 7 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_7</td><td>STRING</td><td>The name of the learning environment organization that has depth = 7 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_8</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 8 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_8</td><td>STRING</td><td>The name of the learning environment organization that has depth = 8 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_9</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 9 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_9</td><td>STRING</td><td>The name of the learning environment organization that has depth = 9 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_id_10</td><td>INTEGER</td><td>The UDP ID of the learning environment organization that has depth = 10 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr><tr><td>sub_learning_environment_organization_10</td><td>STRING</td><td>The name of the learning environment organization that has depth = 10 in the hierarchy of the learning environment organization in scope, if it exists.</td></tr></tbody></table>

### Mart/Course\_section/learning\_environment\_organization <a href="#interactionsessions-mart-course_section-interaction_sessions" id="interactionsessions-mart-course_section-interaction_sessions"></a>

The course section mart includes all the fields found in the course offering mart, as well as 2 more fields, which are presented in the table below.

<table data-full-width="true"><thead><tr><th width="247.33333333333337">Field</th><th width="129">Type</th><th>Description</th></tr></thead><tbody><tr><td>udp_course_section_id</td><td>INTEGER</td><td>The UDP ID of the Course section.</td></tr><tr><td>lms_course_section_id</td><td>STRING</td><td>The LMS ID of the Course section.</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://resources.unizin.org/products/data-and-analytics/unizin-data-platform/data-stores/data-marts/learning-environment-organization.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
