When scraping resources, the various model validations can sometimes be overly strict.
For example when parsing a Bioschemas LearningResource, if a resource is marked-up with:
"educationalLevel": "Introductory"
which TeSS uses for the difficulty_level field, it will fail validation because TeSS uses a controlled vocab for this field and "Introductory" is not a valid option. This validation failure prevents the material being registered entirely.
Instead, TeSS could just ignore that one field and register the material anyway.
Look into a way of stripping invalid attributes from a model and re-attempting the creation
Ensure these "soft failures" are logged somewhere as warnings (in the source's ingestion log)
When scraping resources, the various model validations can sometimes be overly strict.
For example when parsing a Bioschemas
LearningResource
, if a resource is marked-up with:which TeSS uses for the
difficulty_level
field, it will fail validation because TeSS uses a controlled vocab for this field and "Introductory" is not a valid option. This validation failure prevents the material being registered entirely.Instead, TeSS could just ignore that one field and register the material anyway.