bergerb / bergerb/OneRosterSampleDataGenerator

Verify enrollments.csv header count against IMS OneRoster 1.1 spec

Open
#66 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C#
Stars
4
Forks
1
PR merge metrics
No merged PRs in 30d

Description

## Issue
The IMS OneRoster 1.1 spec defines **10 columns** for `enrollments.csv`:

```
sourcedId, status, dateLastModified, classSourcedId, schoolSourcedId, userSourcedId, role, primary, beginDate, endDate
```

The current implementation generates **11 columns** with an additional `courseSourcedId` column. This was added in v2.1.1-beta (changelog: "Add missing courseSourcedId column to enrollments.csv").

## Spec Reference
https://www.imsglobal.org/oneroster-v11-final-csv-tables (Section 3.9 - enrollments.csv)

## Current Model
`EnrollmentFile.cs` has 11 properties including `courseSourcedId`.

## Recommendation
Verify whether `courseSourcedId` should be in enrollments.csv per the IMS spec, or if this is an intentional extension. If it's an extension, consider making it configurable or documented as non-standard.

## Related
- NemesisApp also validates against 11 headers
- DailyOneRosterFile now validates against the spec's 10 headers

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with EnrollmentFile.cs and compare its 11 properties with Section 3.9 of the IMS OneRoster 1.1 specification. Then inspect NemesisApp and DailyOneRosterFile, which validate different header counts. Done means resolving whether courseSourcedId is standard or an intentional extension, and aligning or documenting the behavior accordingly.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.