This page shows how OpenSPP vocabulary codes map to PublicSchema canonical values. If you work with OpenSPP and spot an error, please report it.

19 vocabularies covered: 15 value mapping, 4 same standard.

Vocabularies

Vocabulary System name Relationship Coverage Gaps
country Same standard All values
currency Same standard All values
education-level Education Level (ISCED 2011) Value mapping 9/10 mapped
event-severity HazardIncidentSeverity Value mapping 5/5 mapped 1 not covered
gender-type ISO 5218: Gender Value mapping 3/4 mapped
group-role Group Membership Type Value mapping 1/1 mapped 12 not covered
group-type Group Type Value mapping 2/2 mapped 2 not covered
identifier-type ID Type Value mapping 4/4 mapped 16 not covered
language Same standard All values
marital-status MaritalStatus Value mapping 6/6 mapped
occupation Same standard All values
payment-status Value mapping 6/6 mapped 4 not covered
relationship-type Value mapping 10/10 mapped 6 not covered
sex ISO 5218: Gender Value mapping 4/4 mapped
sp/benefit-modality Value mapping 2/2 mapped 4 not covered
sp/eligibility-status Value mapping 1/1 mapped 4 not covered
sp/enrollment-status Value mapping 4/4 mapped 2 not covered
sp/entitlement-status EntitlementState Value mapping 8/8 mapped 2 not covered
sp/grievance-status Value mapping 6/6 mapped 2 not covered

Documented gaps

PublicSchema items that OpenSPP does not model, with the documented reason.

PublicSchema item Reason
benefit-frequency OpenSPP does not have a vocabulary or selection enum for benefit delivery frequency. Cycle recurrence in OpenSPP is configured via date ranges and the Odoo recurrence infrastructure (RRULE), not a controlled vocabulary.
event-certainty No OpenSPP vocabulary or selection for data certainty or confidence level on recorded attributes.
conditionality-type OpenSPP does not expose a conditionality classification vocabulary. Whether a program is conditional or unconditional is implicit in program configuration, not a controlled vocabulary field.
delivery-channel OpenSPP does not have a delivery channel vocabulary. Payment delivery mechanism is determined by the FSP (Financial Service Provider) configuration, not a separate enumeration.
grievance-type OpenSPP GRM does not have a structured grievance category vocabulary in the extracted data. Ticket categorization is done through configurable category records (spp.grm.ticket.category), not a fixed selection enum, making a code-level mapping impossible without deployment-specific data.
hazard-type OpenSPP spp_hazard module defines hazard incidents but does not expose a hazard type classification vocabulary or selection in the extracted data. Hazard types would be configured per deployment.
referral-status OpenSPP does not have a referral module or referral lifecycle vocabulary in the extracted data. The spp_case_base module tracks intake source (including 'referral') but not outbound referral status.
targeting-approach OpenSPP does not have a controlled vocabulary for targeting methodology. Targeting is implemented through configurable filter rules and scoring models (spp_scoring), not a classification vocabulary.
script No OpenSPP vocabulary for writing scripts (ISO 15924). OpenSPP language vocabulary uses ISO 639 codes only.
region No OpenSPP vocabulary for UN M49 geographic regions. Country selection uses ISO 3166-1; regional groupings are not exposed as a controlled vocabulary.