bergerb / bergerb/OneRosterSampleDataGenerator
Verify enrollments.csv header count against IMS OneRoster 1.1 spec
- 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