Skip to content

OR 1.2 — certification dossier

Generated by bun run conformance:render — do not edit by hand.

Point-by-point certification submission: every conformance requirement against the literal published schema (conform-ed ADR-0013), with emergent’s implementation status, the spec citation, the modelled schema anchors, and the verifying evidence (emergent ADR-0028).

  • Denominator: pinned Coverage Map docs/conformance/maps/oneroster-v1.2.json (generated 2026-06-22), sha256 50d51ad39235f23a00992402aec7669e84fe4a65394d0c45ec00af810fbdbb51.
  • Requirements: 21/21 done across 5 profile(s) — assessment-results, gradebook, resources, rostering, transport.
  • Information model: 248/410 literal items modelled; 88 transport-axis items (operations / parameters / security).
  • Evidence: each claim cites its [covers:] evidence key; run bun run conformance:prove to resolve these to the proving test names for a submission copy.
Req Level Status Statement Verified by / justification Spec source
OR-AR-1 MUST ✅ done Every assessment-results object (AssessmentLineItem, AssessmentResult) MUST carry a sourcedId, a status and a dateLastModified. or:1.2:conf:assessment-results/OR-AR-1 OneRoster 1.2 Cert §4.1.3 (Assessment Results — OR 1.2) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-AR-2 MUST ✅ done An AssessmentResult MUST reference its AssessmentLineItem and the student it scores, and carry a score status. or:1.2:conf:assessment-results/OR-AR-2 OneRoster 1.2 §AssessmentResult — https://www.imsglobal.org/spec/oneroster/v1p2
OR-AR-3 MUST ✅ done An assessment-results service provider MUST serve the assessmentLineItems and assessmentResults GET endpoints (collection and single-object). or:1.2:conf:assessment-results/OR-AR-3 OneRoster 1.2 Cert §4.1.3 (Assessment Results provider endpoints — OR 1.2) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
Modelled schema anchors
  • OR-AR-1or:1.2:def:AssessmentLineItemDType/sourcedId, or:1.2:def:AssessmentLineItemDType/status, or:1.2:def:AssessmentLineItemDType/dateLastModified, or:1.2:def:AssessmentResultDType/sourcedId, or:1.2:def:AssessmentResultDType/status, or:1.2:def:AssessmentResultDType/dateLastModified
  • OR-AR-2or:1.2:def:AssessmentResultDType/assessmentLineItem, or:1.2:def:AssessmentResultDType/student, or:1.2:def:AssessmentResultDType/scoreStatus
  • OR-AR-3or:1.2:path:gradebook/GET /assessmentLineItems, or:1.2:path:gradebook/GET /assessmentLineItems/{sourcedId}, or:1.2:path:gradebook/GET /assessmentResults, or:1.2:path:gradebook/GET /assessmentResults/{sourcedId}
Req Level Status Statement Verified by / justification Spec source
OR-GB-1 MUST ✅ done A LineItem MUST reference the class it scores and the academic session it falls within. or:1.2:conf:gradebook/OR-GB-1 OneRoster 1.2 Gradebook §LineItem — https://www.imsglobal.org/spec/oneroster/v1p2
OR-GB-2 MUST ✅ done A Result MUST reference the LineItem it scores and the student it belongs to, and carry a score status. or:1.2:conf:gradebook/OR-GB-2 OneRoster 1.2 Gradebook §Result — https://www.imsglobal.org/spec/oneroster/v1p2
OR-GB-3 MUST ✅ done Every gradebook object (LineItem, Result, Category, ScoreScale) MUST carry a sourcedId, a status and a dateLastModified. or:1.2:conf:gradebook/OR-GB-3 OneRoster 1.2 Cert §4.1.2 (Gradebook entities) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-GB-4 MUST ✅ done A Result MUST carry the score value (or its scoreStatus rationale) and the date it was recorded. or:1.2:conf:gradebook/OR-GB-4 OneRoster 1.2 Gradebook §Result (score/scoreDate) — https://www.imsglobal.org/spec/oneroster/v1p2
OR-GB-5 MUST ✅ done A gradebook service provider MUST serve either the pull endpoints (GET categories, lineItems, results, scoreScales) or the push endpoints (PUT lineItems/{id}, PUT results/{id}). or:1.2:conf:gradebook/OR-GB-5 OneRoster 1.2 Cert §4.1.2 (Gradebook provider endpoints) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
Modelled schema anchors
  • OR-GB-1or:1.2:def:LineItemDType/class, or:1.2:def:LineItemDType/academicSession
  • OR-GB-2or:1.2:def:ResultDType/lineItem, or:1.2:def:ResultDType/student, or:1.2:def:ResultDType/scoreStatus
  • OR-GB-3or:1.2:def:LineItemDType/sourcedId, or:1.2:def:LineItemDType/status, or:1.2:def:LineItemDType/dateLastModified, or:1.2:def:ResultDType/sourcedId, or:1.2:def:ResultDType/status, or:1.2:def:ResultDType/dateLastModified, or:1.2:def:CategoryDType/sourcedId, or:1.2:def:CategoryDType/status, or:1.2:def:ScoreScaleDType/sourcedId, or:1.2:def:ScoreScaleDType/status
  • OR-GB-4or:1.2:def:ResultDType/score, or:1.2:def:ResultDType/scoreDate, or:1.2:def:ResultDType/scoreStatus
  • OR-GB-5or:1.2:path:gradebook/GET /categories, or:1.2:path:gradebook/GET /lineItems, or:1.2:path:gradebook/GET /results, or:1.2:path:gradebook/GET /scoreScales, or:1.2:path:gradebook/PUT /lineItems/{sourcedId}, or:1.2:path:gradebook/PUT /results/{sourcedId}
Req Level Status Statement Verified by / justification Spec source
OR-RES-1 MUST ✅ done A Resource MUST carry a title and a vendorResourceId identifying it within the providing vendor. or:1.2:conf:resources/OR-RES-1 OneRoster 1.2 Resources §Resource — https://www.imsglobal.org/spec/oneroster/v1p2
OR-RES-2 MUST ✅ done A Resource MUST carry a sourcedId, a status and a dateLastModified like every other OneRoster object. or:1.2:conf:resources/OR-RES-2 OneRoster 1.2 Cert §4.1.4 (Resources) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-RES-3 MUST ✅ done A resources service provider MUST serve the GET /resources collection and GET /resources/{sourcedId} single-object endpoints. or:1.2:conf:resources/OR-RES-3 OneRoster 1.2 Cert §4.1.4 (Resources provider endpoints) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
Modelled schema anchors
  • OR-RES-1or:1.2:def:ResourceDType/title, or:1.2:def:ResourceDType/vendorResourceId
  • OR-RES-2or:1.2:def:ResourceDType/sourcedId, or:1.2:def:ResourceDType/status, or:1.2:def:ResourceDType/dateLastModified
  • OR-RES-3or:1.2:path:resources/GET /resources, or:1.2:path:resources/GET /resources/{sourcedId}
Req Level Status Statement Verified by / justification Spec source
OR-1 MUST ✅ done Every rostering object MUST carry a stable sourcedId and a status (active / tobedeleted), and a dateLastModified — the watermark a delta exchange reconciles against. or:1.2:conf:rostering/OR-1 OneRoster 1.2 Cert §4 (REST) / §3 (CSV) — Base entity — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-2 MUST ✅ done A User MUST declare at least one role binding the user to an organization, each role carrying a roleType. or:1.2:conf:rostering/OR-2 OneRoster 1.2 §User / Role — https://www.imsglobal.org/spec/oneroster/v1p2
OR-3 MUST ✅ done An Enrollment MUST reference the user it enrols and the class it enrols them into, and declare the enrolment role. or:1.2:conf:rostering/OR-3 OneRoster 1.2 §Enrollment — https://www.imsglobal.org/spec/oneroster/v1p2
OR-4 MUST ✅ done A Class MUST reference the course it instantiates and the school (org) that offers it. or:1.2:conf:rostering/OR-4 OneRoster 1.2 §Class — https://www.imsglobal.org/spec/oneroster/v1p2
OR-5 MUST ✅ done A rostering service provider MUST serve the collection and single-object GET endpoints for every rostering entity (academicSessions, classes, courses, enrollments, gradingPeriods, orgs, schools, students, teachers, terms, users). or:1.2:conf:rostering/OR-5 OneRoster 1.2 Cert §4.1.1 (Rostering provider endpoints) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
Modelled schema anchors
  • OR-1or:1.2:def:OrgDType/sourcedId, or:1.2:def:OrgDType/status, or:1.2:def:OrgDType/dateLastModified, or:1.2:def:UserDType/sourcedId, or:1.2:def:UserDType/status, or:1.2:def:UserDType/dateLastModified, or:1.2:def:ClassDType/sourcedId, or:1.2:def:ClassDType/status, or:1.2:def:ClassDType/dateLastModified, or:1.2:def:CourseDType/sourcedId, or:1.2:def:CourseDType/status, or:1.2:def:CourseDType/dateLastModified, or:1.2:def:EnrollmentDType/sourcedId, or:1.2:def:EnrollmentDType/status, or:1.2:def:EnrollmentDType/dateLastModified, or:1.2:def:AcademicSessionDType/sourcedId, or:1.2:def:AcademicSessionDType/status, or:1.2:def:AcademicSessionDType/dateLastModified
  • OR-2or:1.2:def:UserDType/roles, or:1.2:def:RoleDType/role, or:1.2:def:RoleDType/roleType, or:1.2:def:RoleDType/org
  • OR-3or:1.2:def:EnrollmentDType/user, or:1.2:def:EnrollmentDType/class, or:1.2:def:EnrollmentDType/role
  • OR-4or:1.2:def:ClassDType/course, or:1.2:def:ClassDType/school
  • OR-5or:1.2:path:rostering/GET /academicSessions, or:1.2:path:rostering/GET /academicSessions/{sourcedId}, or:1.2:path:rostering/GET /classes, or:1.2:path:rostering/GET /classes/{sourcedId}, or:1.2:path:rostering/GET /courses, or:1.2:path:rostering/GET /courses/{sourcedId}, or:1.2:path:rostering/GET /enrollments, or:1.2:path:rostering/GET /enrollments/{sourcedId}, or:1.2:path:rostering/GET /gradingPeriods, or:1.2:path:rostering/GET /gradingPeriods/{sourcedId}, or:1.2:path:rostering/GET /orgs, or:1.2:path:rostering/GET /orgs/{sourcedId}, or:1.2:path:rostering/GET /schools, or:1.2:path:rostering/GET /schools/{sourcedId}, or:1.2:path:rostering/GET /students, or:1.2:path:rostering/GET /students/{sourcedId}, or:1.2:path:rostering/GET /teachers, or:1.2:path:rostering/GET /teachers/{sourcedId}, or:1.2:path:rostering/GET /terms, or:1.2:path:rostering/GET /terms/{sourcedId}, or:1.2:path:rostering/GET /users, or:1.2:path:rostering/GET /users/{sourcedId}
Req Level Status Statement Verified by / justification Spec source
OR-TR-1 MUST ✅ done Every REST endpoint MUST be protected by OAuth 2.0 using the Client Credentials grant, per the 1EdTech Security Framework. or:1.2:conf:transport/OR-TR-1 OneRoster 1.2 Cert §4.3 (Security) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-TR-2 MUST ✅ done A provider MUST support the pagination mechanism (the limit and offset query parameters) on every response that provides a collection. or:1.2:conf:transport/OR-TR-2 OneRoster 1.2 Cert §4.3.1 (Pagination) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-TR-3 MUST ✅ done A provider MUST support the filtering mechanism (the filter query parameter) on collection responses. or:1.2:conf:transport/OR-TR-3 OneRoster 1.2 Cert §4.3.1 (Filtering) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-TR-4 MUST ✅ done A provider MUST support the sorting mechanism (the sort and orderBy query parameters) on every response that provides a collection. or:1.2:conf:transport/OR-TR-4 OneRoster 1.2 Cert §4.3.1 (Sorting) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
OR-TR-5 MUST ✅ done A provider MUST support the field-selection mechanism (the fields query parameter) on collection and singleton responses. or:1.2:conf:transport/OR-TR-5 OneRoster 1.2 Cert §4.3.1 (Field selection) — https://www.imsglobal.org/spec/oneroster/v1p2/cert/
Modelled schema anchors
  • OR-TR-1or:1.2:sec:OAuth2CC
  • OR-TR-2or:1.2:param:limit, or:1.2:param:offset
  • OR-TR-3or:1.2:param:filter
  • OR-TR-4or:1.2:param:sort, or:1.2:param:orderBy
  • OR-TR-5or:1.2:param:fields