Uploaded image for project: 'Ed-Fi Data Standard'
  1. Ed-Fi Data Standard
  2. DATASTD-1510

Change StudentObjectiveAssessment.ScoreResult to an optional collection



    • Bug
    • Resolution: Done
    • Major
    • None
    • None
    • None
    • None



      Reviewed in the context of v3.2b Data Standard.

      Properties of StudentObjectiveAssessment:

      • ObjectiveAssessment (required)
      • PerformanceLevel (optional collection)
      • ScoreResult (required collection)

      Therefore, a student objective assessment requires at least one score result.


      Field usage has identified scenarios in which a performance level is available for an objective assessment but not a score result. Examples are ELPAC and CAASPP.

      A detailed example of ELPAC:

       "Written Language" objective assessment has both a performance level and score :

      • Field 69: Written Language Performance Level
      • Field 67: Written Language Scale Score
      • "Oral Language" follows a similar pattern

       "Listening" objective assessment has only a performance level:

      • Field 70: Listening Performance
      • "Speaking", "Reading", and "Writing" follow a similar pattern, i.e. there is not related score.


      Consider changing cardinality requirements so that both PerformanceLevel and ScoreResult are optional collections. If metadata semantics supports it, the desired requirement is that either PerformanceLevel or ScoreResult are required.

      Alternatively, clarify why an objective assessment should always have at least one score result and suggest a recommended mapping strategy for ELPACS (and other similar cases).

      Related Information

      The ObjectiveAssessment seems to be defined inconsistently with the StudentObjectiveAssessment resource. Note that both ObjectiveAssessment.AssessmentScore and ObjectiveAssessment.AssessmentPerformanceLevel are defined with a cardinality of optional collection.

      Ancillary Comments

      It appears that enforcement of "required collection" cardinality was only introduced in technical suite 3: https://github.com/Ed-Fi-Alliance/Ed-Fi-ODS/pull/323/commits/bb33d00d06a8b98ddb2c09ac5e99d26bcd433a86

      We came across this issue in the context of migrating from Data Flow to Data Import. Data Import correctly reads the metadata and rejects the mapping at processing time with an INFO message of "Discarding array item 'studentAssessmentStudentObjectiveAssessment' because one of its required properties was blank. This can happen when an input file with 'jagged' data is mapped to an ODS array property." 



        Issue Links



              Unassigned Unassigned
              gxclarke Gary Clarke
              0 Vote for this issue
              2 Start watching this issue