Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 21 additions & 2 deletions src/ol_dbt/models/intermediate/ocw/_int_ocw__models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,8 @@ models:
- name: course_year
description: int, course year
- name: course_level
description: str, course level in comma-separated list. Possible values are Undergraduate
, Graduate, Non-Credit, High School, or blank
description: str, course level in comma-separated list. Possible values are Undergraduate,
Graduate, Non-Credit, High School, or blank
- name: course_primary_course_number
description: str, the primary course number e.g. 21A.850J
tests:
Expand Down Expand Up @@ -310,6 +310,25 @@ models:
description: str, UUID of the resource
tests:
- not_null
- name: resource_license
description: str, license URL of the resource (e.g., Creative Commons)
- name: resource_description
description: str, description of the resource
- name: resource_file_type
description: str, file type of the resource file
- name: resource_file_size
description: str, file size of the resource file
- name: resource_ocw_type
description: str, OCW content type classification of the resource
- name: external_resource_status
description: str, link status of the external resource (e.g., valid, unchecked,
broken, check_failed)
- name: external_resource_wayback_url
description: str, Wayback Machine archive URL of the external resource
- name: resource_audience
description: str, intended audience of the resource as a JSON array
- name: resource_level
description: str, level of the resource as a JSON array
- name: video_archive_url
description: str, archive URL of the video
- name: video_captions_file
Expand Down
28 changes: 28 additions & 0 deletions src/ol_dbt/models/intermediate/ocw/int__ocw__resources.sql
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,34 @@ select
, nullif(nullif(json_query(
websitecontents.websitecontent_metadata, 'lax $.video_files.video_transcript_file' omit quotes
), ''), 'null') as video_transcript_file
-- resource metadata
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.license'") }}, ''
), 'null') as resource_license
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.description'") }}, ''
), 'null') as resource_description
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.file_type'") }}, ''
), 'null') as resource_file_type
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.file_size'") }}, ''
), 'null') as resource_file_size
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.ocw_type'") }}, ''
), 'null') as resource_ocw_type
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.status'") }}, ''
), 'null') as external_resource_status
, nullif(nullif(
{{ json_query_string('websitecontents.websitecontent_metadata', "'$.wayback_url'") }}, ''
), 'null') as external_resource_wayback_url
, nullif(nullif(nullif(json_query(
websitecontents.websitecontent_metadata, 'lax $.audience' omit quotes
), ''), 'null'), '[]') as resource_audience
, nullif(nullif(nullif(json_query(
websitecontents.websitecontent_metadata, 'lax $.level' omit quotes
), ''), 'null'), '[]') as resource_level
from websites
inner join websitecontents
on websites.website_uuid = websitecontents.website_uuid
Expand Down
105 changes: 103 additions & 2 deletions src/ol_dbt/models/marts/ocw/_marts__ocw__models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ models:
- name: course_year
description: int, course year
- name: course_level
description: str, course level in comma-separated list. Possible values are Undergraduate
, Graduate, Non-Credit, High School, or blank
description: str, course level in comma-separated list. Possible values are Undergraduate,
Graduate, Non-Credit, High School, or blank
- name: course_primary_course_number
description: str, the primary course number e.g. 21A.850J
tests:
Expand All @@ -72,3 +72,104 @@ models:
list. e.g. Lecture Notes, Problem Sets with Solutions...
Full list can be found at
https://github.com/mitodl/ocw-hugo-projects/blob/049c85e6544a36ba69a89602e5014f6085ef8831/ocw-course-v2/ocw-studio.yaml#L163-L207

- name: marts__ocw_resources
description: OCW course resources (files, external resources, video, image) for
review and analysis
columns:
Comment on lines +76 to +79
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated in efa4981.

- name: course_uuid
description: str, UUID of the course containing the resource
tests:
- not_null
- name: course_name
description: str, name of the course
- name: course_number
description: str, primary course number of the course, from the course metadata
- name: course_title
description: str, title of the course, from the course metadata
- name: course_term
description: str, term course was taught, from the course metadata
- name: course_year
description: str, year course was taught, from the course metadata
- name: course_live_url
description: str, url of the course on production
- name: resource_uuid
description: str, UUID of the resource
tests:
- not_null
- name: resource_title
description: str, title of the resource
- name: content_type
description: str, WebsiteContent type of the resource (e.g., resource, external-resource)
- name: resource_type
description: str, resource type (image, video, etc.)
- name: resource_ocw_type
description: str, OCW content type classification of the resource
- name: resource_filename
description: str, filename of the resource file
- name: resource_file_type
description: str, file type of the resource file
- name: resource_file_size
description: str, file size of the resource file
- name: resource_draft
description: boolean, whether the resource is draft
- name: resource_live_url
description: str, live URL of the resource on production
- name: studio_url
description: str, OCW Studio URL for the resource
- name: website_title
description: str, title of the course
- name: learning_resource_types
description: str, learning resource types of the resource (e.g., Lecture Notes)
- name: resource_license
description: str, license URL of the resource (e.g., Creative Commons)
- name: resource_description
description: str, description of the resource
- name: resource_audience
description: str, intended audience of the resource as a JSON array
- name: resource_level
description: str, level of the resource as a JSON array
- name: external_resource_url
description: str, URL of the external resource
- name: external_resource_is_broken
description: boolean, whether the external resource link is broken
- name: external_resource_license_warning
description: boolean, whether the external resource has a license warning
- name: external_resource_url_status_code
description: int, status code of the external resource URL
- name: external_resource_backup_url
description: str, backup URL of the external resource
- name: external_resource_backup_url_status_code
description: int, status code of the external resource backup URL
- name: external_resource_status
description: str, link status of the external resource (e.g., valid, unchecked,
broken, check_failed)
- name: external_resource_wayback_url
description: str, Wayback Machine archive URL of the external resource
- name: image_alt_text
description: str, alt text of the image resource
- name: image_caption
description: str, caption of the image resource
- name: image_credit
description: str, credit of the image resource
- name: video_youtube_id
description: str, YouTube ID of the video
- name: video_youtube_description
description: str, description of the YouTube video
- name: video_youtube_speakers
description: str, speakers in the YouTube video
- name: video_youtube_tags
description: str, tags of the YouTube video
- name: video_archive_url
description: str, archive URL of the video
- name: video_captions_file
description: str, captions file of the video resource
- name: video_thumbnail_file
description: str, thumbnail file of the video resource
- name: video_transcript_file
description: str, transcript file of the video resource
tests:
- dbt_utils.unique_combination_of_columns:
combination_of_columns:
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated in 57b582d.

- course_uuid
- resource_uuid