Data Determinations
The Triand datastore contains educational information about students, schools and districts for the last 20 years. The OneRoster API however only includes current information about schools, students, teachers, and schedules.
Simplistically that means:
- Only currently enrolled students are included.
- Only active teachers are included.
- Only current school-year schedules are included.
- Only active districts are included.
- Only active schools are included.
The reality is a bit more complex. The following sections detail the specific determinations we make about what data to include in the OneRoster API, and what to exclude.
Schools (Org)
- Arkansas public schools and districts active in the current school year are rostered as a district Org plus one school Org each (LEA from
reg_building.state_code_equiv). - Home-school and private-school districts are not extracted from eSchool — their rosters are loaded from ADE-provided files instead.
Students (User & Demographics)
- Currently enrolled (
reg.current_status = 'A') and visible at the school — i.e. an active, current enrollment record (entry/withdrawal) tying the student to that building. - Must have a valid 10-digit State Student-ID (
reg_personal.state_report_id); blank, wrong-length, or temporary IDs (those beginning withT) are skipped. - Name fields (first, middle, last) may contain only the supported characters below; a record with any other character in a name is skipped.
Supported in names:
- Letters
A–Zanda–z, and digits0–9 - Space
- Accented / extended Latin letters (e.g.
á,é,í,ñ,ü,ç) - These punctuation and symbol characters:
- * ( ) . ; / & # @ ' + ~ ! $ % ^ _ = : [ ] { } < > ? ` , —and the curly apostrophe’
Anything outside this set (for example tabs, control characters, or other Unicode symbols and emoji) is unsupported and causes the student to be skipped.
- Letters
- Students whose ADE residency code is a home-school or private-school code (1, 2, 4, 5, 12, X1, X) are excluded, per ADE guidance.
- Students whose educational placement is
PP(private placement) are excluded, per ADE guidance.
Teachers (User)
- Drawn from the district Staff Catalog for the current school year; each is rostered against their primary building.
- A teacher must carry a State Educator-ID (
reg_staff.staff_state_id) to be referenced by a class.
Schedules (Class & Enrollment)
- Only current school-year course sections are rostered; prior-year history is not.
- The section must belong to the school being processed and to a district where the student is actively enrolled.
- Sections that have been dropped/soft-deleted in eSchool are excluded.
- A class (and its student/teacher enrollments) is created only when the section's teacher resolves to a rostered Staff-Catalog teacher.
When Records Are Updated
Every record carries a dateLastModified timestamp. Whenever the source data for a record changes, the record is rewritten with a new dateLastModified. This allows API consumers to query for just the records that have changed since their last query.
How Records Are Removed
When a record is removed from the source (for example, a student who unenrolls, a teacher who leaves, or a section that gets dropped), the record is not immediately deleted from the API. Instead, its status is set to tobedeleted and its dateLastModified is updated. This gives API consumers a chance to see and reconcile the change before the record disappears.
A tobedeleted record is then permanently removed after it has stayed tobedeleted for more than 7 days. The 7 day window was chosen based on conversations with API consumers about how long they typically need to reconcile changes in their systems. Note that the 7-day window is a rolling window — records are permanently deleted on a daily basis once they have been in tobedeleted status for more than 7 days. From time-to-time Triand extends the 7-day window for various technical reasons. But in general, API consumers should expect that when a record is marked tobedeleted, they have 7 days to reconcile the change before the record is permanently deleted.