Skip to content

Commit

Permalink
Merge pull request #9 from Unicon/feature/create-base-tpdm-models
Browse files Browse the repository at this point in the history
Create base TPDM models (iteration)
  • Loading branch information
holdorph authored Jul 18, 2024
2 parents 18975fa + ea9fba0 commit 8af9a5c
Show file tree
Hide file tree
Showing 12 changed files with 250 additions and 10 deletions.
14 changes: 13 additions & 1 deletion models/staging/edfi_3/base/_edfi_3__base.yml
Original file line number Diff line number Diff line change
Expand Up @@ -184,4 +184,16 @@ models:
- name: base_ef3__surveys
config:
tags: ['survey']
enabled: "{{ var('src:program:survey:enabled', True) }}"
enabled: "{{ var('src:program:survey:enabled', True) }}"
- name: base_ef3__credentials
config:
tags: ['core']
- name: base_ef3__post_secondary_institutions
config:
tags: ['core']
- name: base_ef3__survey_sections
config:
tags: ['survey']
- name: base_ef3__survey_section_responses
config:
tags: ['survey']
36 changes: 36 additions & 0 deletions models/staging/edfi_3/base/base_ef3__credentials.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
with credentials as (
{{ source_edfi3('credentials') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:credentialIdentifier::string as credential_id,
v:effectiveDate::date as effective_date,
v:expirationDate::date as expiration_date,
v:issuanceDate::date as issuance_date,
v:namespace::string as namespace,
-- descriptors
{{ extract_descriptor('v:credentialFieldDescriptor::string') }} as credential_field,
{{ extract_descriptor('v:credentialTypeDescriptor::string') }} as credential_type,
{{ extract_descriptor('v:stateOfIssueStateAbbreviationDescriptor::string') }} as state_of_issue_state_abbreviation,
{{ extract_descriptor('v:teachingCredentialDescriptor::string') }} as teaching_credential,
{{ extract_descriptor('v:teachingCredentialBasisDescriptor::string') }} as teaching_credential_basis,
-- unnested lists
v:endorsements as v_endorsements,
v:academicSubjects as v_academic_subjects,
v:gradeLevels as v_grade_levels,
-- references
v:studentAcademicRecords as student_academic_records,
-- edfi extensions
v:_ext as v_ext
from credentials
)
select * from renamed
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
with post_secondary_institutions as (
{{ source_edfi3('post_secondary_institutions') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:postSecondaryInstitutionId::int as post_secondary_institution_id,
v:nameOfInstitution::string as name_of_institution,
v:shortNameOfInstitution::string as short_name_of_institution,
v:webSite::string as web_site,
-- descriptors
{{ extract_descriptor('v:postSecondaryInstitutionLevelDescriptor::string')}} as post_secondary_institution_level,
{{ extract_descriptor('v:administrativeFundingControlDescriptor::string')}} as administrative_funding_control,
{{ extract_descriptor('v:federalLocaleCodeDescriptor::string')}} as federal_locale_code,
{{ extract_descriptor('v:operationalStatusDescriptor::string')}} as operational_status_descriptor,
-- unflattened lists
v:categories as v_categories,
v:addresses as v_addresses,
v:identificationCodes as v_identification_codes,
v:indicators as v_indicators,
v:institutionTelephones as v_institution_telephones,
v:internationalAddresses as v_international_addresses,
v:mediumOfInstructions as v_medium_of_instructions
from post_secondary_institutions
)
select * from renamed
23 changes: 23 additions & 0 deletions models/staging/edfi_3/base/base_ef3__survey_section_responses.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
with section_responses as (
{{ source_edfi3('section_responses') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:surveyResponseReference:surveyResponseIdentifier::string as survey_response_id,
v:surveySectionReference:surveyIdentifier::string as survey_id,
v:sectionRating::decimal(9,3) as section_rating,
-- references
v:surveyResponseReference as survey_response_reference,
v:surveySectionReference as survey_section_reference
from section_responses
)
select * from renamed
21 changes: 21 additions & 0 deletions models/staging/edfi_3/base/base_ef3__survey_sections.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
with survey_sections as (
{{ source_edfi3('survey_sections') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:surveyReference::surveyIdentifier::string as survey_id,
v:surveySectionTitle::string as survey_section_title,
-- references
v:surveyReference as survey_reference
from survey_sections
)
select * from renamed
12 changes: 12 additions & 0 deletions models/staging/tpdm/base/_tpdm__base.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,18 @@ models:
- name: base_tpdm__educator_preparation_programs
config:
tags: ['tpdm']
- name: base_tpdm__survey_response_person_target_associations
config:
tags: ['tpdm']
- name: base_tpdm__candidate_educator_preparation_program_associations
config:
tags: ['tpdm']
- name: base_tpdm__financial_aids
config:
tags: ['tpdm']
- name: base_tpdm__rubric_dimensions
config:
tags: ['tpdm']
- name: base_tpdm__evaluations
config:
tags: ['tpdm']
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
with candidate_educator_preparation_program_associations as (
{{ source_edfi3('candidate_educator_preparation_program_associations') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:candidateReference:candidateIdentifier::string as candidate_id,
v:educatorPreparationProgramReference:educationOrganizationId::int as program_id,
v:beginDate::date as begin_date,
v:endDate::date as end_date,
-- descriptors
{{ extract_descriptor('v:reasonExitedDescriptor::string') }} as reason_exited,
{{ extract_descriptor('v:eppProgramPathwayDescriptor::string') }} as epp_program_pathway,
-- unnested lists
v:degreeSpecializations as v_degree_specializations,
v:cohortYears as v_cohort_years,
-- references
v:candidateReference as candidate_reference,
v:educatorPreparationProgramReference as educator_preparation_program_reference
from candidate_educator_preparation_program_associations
)
select * from renamed
6 changes: 3 additions & 3 deletions models/staging/tpdm/base/base_tpdm__candidates.sql
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ renamed as (

v:id::string as record_guid,
v:candidateIdentifier::string as candidate_id,
v:personReference::personId::string as person_id,
v:firstName::string as first_name,
v:lastSurname::string as last_name,
v:middleName::string as middle_name,
Expand All @@ -35,7 +36,7 @@ renamed as (
{{ extract_descriptor('v:sexDescriptor::string') }} as sex,
{{ extract_descriptor('v:birthSexDescriptor::string') }} as birth_sex,
{{ extract_descriptor('v:birthStateAbbreviationDescriptor::string') }} as birth_state,
{{ extract_descriptor('v:birthCountyDescriptor::string') }} as birth_county,
{{ extract_descriptor('v:birthCountryDescriptor::string') }} as birth_country,
{{ extract_descriptor('v:englishLanguageExamDescriptor::string' )}} as english_language_exam,
{{ extract_descriptor('v:limitedEnglishProficiencyDescriptor::string' )}} as lep_code,
-- unflattened lists
Expand All @@ -49,8 +50,7 @@ renamed as (
v:telephones as v_telephones,

-- references
v:personReference as person_reference,

v:personReference as person_reference
from candidates
)
select * from renamed
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
with educator_prep_programs as (
with educator_preparation_programs as (
{{ source_edfi3('educator_preparation_programs') }}
),
renamed as (
Expand All @@ -13,18 +13,16 @@ renamed as (

v:id::string as record_guid,
v:programId::string as program_id,
v:programName::string as program_name,
v:educationOrganizationReference:educationOrganizationId::integer as ed_org_id,
v:educationOrganizationReference:link:rel::string as ed_org_type,
v:programName::string as program_name,
-- descriptors
{{ extract_descriptor('v:programTypeDescriptor::string') }} as program_type,
{{ extract_descriptor('v:accreditationStatusDescriptor::string') }} as accreditation_status,
-- unflattened lists
v:gradeLevels as v_grade_levels,
-- references
v:educationOrganizationReference as ed_org_reference,
-- edfi extensions
v:_ext as v_ext
from educator_prep_programs
v:educationOrganizationReference as ed_org_reference
from educator_preparation_programs
)
select * from renamed
26 changes: 26 additions & 0 deletions models/staging/tpdm/base/base_tpdm__financial_aids.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
with financial_aids as (
{{ source_edfi3('financial_aids') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:studentReference:studentUniqueId::string as student_id,
v:aidTypeDescriptor::string as aid_type,
v:beginDate::date as begin_date,
v:aidAmount::decimal(19, 4) as aid_amount,
v:aidConditionDescription::string as aid_condition_description,
v:endDate::date as end_date,
v:pellGrantRecipient::boolean as pell_grant_recipient,
-- references
v:studentReference as student_reference
from financial_aids
)
select * from renamed
25 changes: 25 additions & 0 deletions models/staging/tpdm/base/base_tpdm__rubric_dimensions.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
with rubric_dimensions as (
{{ source_edfi3('rubric_dimensions') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:evaluationElementReference:educationOrganizationId::int as ed_org_id,
v:rubricRating::int as rubric_rating,
v:criterionDescription::string as criterion_description,
v:dimensionOrder::int as dimension_order,
-- descriptors
{{ extract_descriptor('v:rubricRatingLevelDescriptor::string') }} as rubric_rating_level,
-- references
v:evaluationElementReference as evaluation_element_reference
from rubric_dimensions
)
select * from renamed
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
with survey_response_person_target_associations as (
{{ source_edfi3('survey_response_person_target_associations') }}
),
renamed as (
select
tenant_code,
api_year,
pull_timestamp,
last_modified_timestamp,
file_row_number,
filename,
is_deleted,

v:id::string as record_guid,
v:personReference:personId::string as person_id,
v:surveyResponseReference:surveyIdentifier::string as survey_id,
v:surveyResponseReference:surveyResponseIdentifier::string as survey_response_id,
-- references
v:surveyResponseReference as survey_response_reference,
v:personReference as person_reference
from survey_response_person_target_associations
)
select * from renamed

0 comments on commit 8af9a5c

Please sign in to comment.