Ed-Fi RFC 27 (b) - Streamlining Access to Identification Codes, Contact Information, and Demographics

Ed-Fi RFC 27 (b) - Streamlining Access to Identification Codes, Contact Information, and Demographics

Ed-Fi Request for Comment 27 Part B: Streamlining Access to Identification Codes, Contact Information, and Demographics
Product: Ed-Fi-Sponsored Standard
Affects: Ed-Fi Resources API
Obsoletes: --
Obsoleted By: --
Status: done

Ed-Fi Alliance
June 20, 2025;

Edits on July 14, 2025: remove Begin Date and End Date from new contact identities.

Edits on October 1, 2025: noting the decision to delete old properties instead of deprecating them.

Synopsis


This Request for Comments (RFC) includes materials that describe proposed additions and revisions to the Ed-Fi Data Standard. This draft material is intended to support review and comment as well as support early usage; users of this material are advised that this work is still under development.

RFC 27 Part B expands on the updates introduced from handling multiple identities and reducing the update burden in the StudentEducationOrganizationAssociation into the core Ed-Fi Data Standard. This enhancement incorporates the following changes:

I. New multiple identity entities:

  • CandidateIdentity

  • ContactIdentity

  • EducationOrganizationIdentity

  • StaffIdentity

  • StudentIdentity

II. New contact and demographics originating from StudentEducationOrganizationAssociation and Staff :

  • StaffContactInformation

  • StaffDemographics

  • StudentContactInformation

  • StudentDemographics

III. Deprecated - not deleted elements. The following domain entities and associations have deprecated deleted fields as the result of the newly requested changes: Update: deprecated fields have now been removed.

  • Candidate

  • StudentEducationOrganizationAssocaiation

  • Student

  • Staff

The Alliance would also like to gather Use Case needs to break out candidate information into new entities:

  • CandidateContactInformation

  • CandidateDemographics

Note: Break out not applied to Contact since it is not a primary person-role like Student, Staff and Candidate

 

Contents

Overview/General Discussion


These improvements were evaluated with the incorporation of the Educator Preparation Data Model into the Ed-Fi Core Model, which drove discussions about the Person model. As a result of the community feedback, there were no large benefits for making Person mandatory, but instead defining new entities for handling multiple identifiers and splitting the common elements from the SEOA.

The proposed changes will enable more ways to track/identify data elements in the system without forcing adoption of a required person model at this time. Furthermore, being able to expand the existing model to accommodate more identifiers per person reduces the impact on vendors currently operating within the Ed-Fi model when compared to the changes that would be involved with forcing a required adoption of the Person model.

This RFC provides the preview of changes for creating the various identity domain entities, and for splitting the SEOA. Other changes already made and that are ready for community review are available in Ed-Fi RFC 27 - Data Standard 6.0 Preview 1.

Community Conversations

The new approach and proposal for how these additional identifiers could be captured and tracked were discussed in the Data Standard Work Group # 9 Meeting on May 16th, 2025, SIS SIG meeting on 6/17/2025, Data Standard Work Group Meeting #10, and will continue to be discussed in upcoming Data Standard meetings before August 2025.

Notable feedback received in these meetings and up to 6/19/2025 is:

  • The need for adding the EducationOrganizationID in the Identity keys and for evaluating the size of the new SEOA.

  • There was not sufficient consensus on the approach to remove the contact and demographic elements from the SEOA. We are waiting on the discussion from the TAG meeting in July, to determine whether we deprecate or delete impacted elements from the SEOA.

Final decision: delete old entities instead of marking them as deprecated; otherwise there will be substantial confusion and extra work for downstream consumers who must look for data in both locations.

Use Cases


Multiple Identity Entities and Reduced Complexity

As mentioned above the Educator Preparation Data Model exposed situations where a single individual can have multiple roles simultaneously which creates the need to easily link data associated. Examples include those records who are students in one context of their continuing education while also being staff at the same time as part of their required training. Other examples include situations where one staff member may be working across multiple districts creating situations where data will be overwritten if there is only one Id and set of information for the person. One of the other pain points that was brought forth by the community is the complexity in the StudentEducationOrganizationAssociation and difficulty in searching the IdentificationCode commons. By breaking the StudentEducationOrganizationAssociation into smaller more manageable components vendors and admins will be better able to query records more specifically and updates can now be made in a targeted way that they do not overwrite whole records. This change will also boost flexibility by allowing the inclusion of Begin and End Dates for each recorded identifier as optional fields. Lastly including EducationOrganization as a reference in the key this enables expanded support for records from different LEAs in such a way that follows the existing pattern of the StudentEducationOrganizationAssociation. As an additional portion of this change the StudentIdentificationCode collection and StaffIdentificationCode collection may be deprecated in a future date having been replaced by the new domain entities. Update: the former elements have now been deleted.

Data Model


The following additional Domain Entities have been added or changed as noted below:

Breakout not applied to Contact since it is not a primary person-role like Student, Staff and Candidate

New Identity Entities:

The new and modifications to the existing domain entities can be found in the following:

I. CandidateIdentity

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Candidate

Reference

object

CandidateReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the candidate.

CandidateIdentificationSystem

Reference

object

CandidateIdentification SystemDescriptor

MetaEd DSL Datatype: DescriptorProperty

Yes

required

A coding scheme that is used for identification and record-keeping purposes by schools, LEAs, SEAs, or other agencies to refer to a candidate.

EducationOrganization

Reference

object

EducationOrganizationReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the education organization representing the context of the candidate information.

IdentificationCode

String

string

IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

required

A unique number or alphanumeric code assigned to an individual by a school,LEA, SEA, or other agency.

SQL Recommended Datatype: VARCHAR(60)

 

AssigningOrganization IdentificationCode

String

string

AssigningOrganization IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

optional

The organization code or name assigning the IdentificationCode.

SQL Recommended Datatype: VARCHAR(60)

 

BeginDate

Date

number

BeginDate

MetaEd DSL Datatype: DateProperty

No

optional  

 

Month, day, and year of the first day the identfication code is effective. 

 

SQL Recommended Datatype: DATE

EndDate

Date

number

EndDate

MetaEd DSL Datatype: DateProperty

No

optional  

 

Month, day, and year of the last day the identfication code is effective.

SQL Recommended Datatype: DATE

II. ContactIdentity

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Contact

Reference

object

ContactReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the contact.

ContactIdentificationSystem

Reference

object

ContactIdentificationSystemDescriptor

MetaEd DSL Datatype: DescriptorProperty

Yes

 

required

A coding scheme that is used for identification and record-keeping purposes by schools, LEAs, SEAs, or other agencies to refer to a contact.

EducationOrganization

Reference

object

EducationOrganizationReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the education organization representing the context of thecontact information.

IdentificationCode

String

string

IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

 

required

A unique number or alphanumeric code assigned to an individual by a school,LEA, SEA, or other agency.

SQL Recommended Datatype: VARCHAR(60)

AssigningOrganization IdentificationCode

String

string

AssigningOrganization IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

 

optional

The organization code or name assigning the IdentificationCode.

SQL Recommended Datatype: VARCHAR(60)

BeginDate

Date

number

BeginDate

MetaEd DSL Datatype: DateProperty

No

optional  

 

Month, day, and year of the first day the identfication code is effective. 

 

SQL Recommended Datatype: DATE

EndDate

Date

number

EndDate

MetaEd DSL Datatype: DateProperty

No

optional  

 

Month, day, and year of the last day the identfication code is effective.

SQL Recommended Datatype: DATE

III. EducationOrganizationIdentity

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

EducationOrganization

Reference

object

EducationOrganizationReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the education organization.

EducationOrganization IdentificationSystem

Reference

object

EducationOrganizationIdentification SystemDescriptor

MetaEd DSL Datatype: DescriptorProperty

Yes

 

required

A coding scheme that is used for identification and record-keeping purposes by schools, LEAs, SEAs, or other agencies to refer to an education organization.

IdentificationCode

String

string

IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

 

 

required

A unique number or alphanumeric code assigned to an education organization by an SEA or other agency.

SQL Recommended Datatype: VARCHAR(60)

AssigningOrganization IdentificationCode

String

string

AssigningOrganization IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

 

 

optional

The organization code or name assigning the IdentificationCode.

SQL Recommended Datatype: VARCHAR(60)

BeginDate

Date

number

BeginDate

MetaEd DSL Datatype: DateProperty

No

optional  

Month, day, and year of the first day the identfication code is effective. 

SQL Recommended Datatype: DATE

 

 

EndDate

Date

number

EndDate

MetaEd DSL Datatype: DateProperty

No

optional  

 

Month, day, and year of the last day the identfication code is effective.

SQL Recommended Datatype: DATE

IV. StaffIdentity

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Property

UML Datatype

JSON Datatype

JSON Element Name

Other

Identity

Cardinality

Definition

Staff

Reference

object

StaffReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the staff.

StaffIdentificationSystem

Reference

object

StaffIdentificationSystemDescriptor

MetaEd DSL Datatype: DescriptorProperty

Yes

 

required

A coding scheme that is used for identification and record-keeping purposes by schools, LEAs, SEAs, or other agencies to refer to a staff.

EducationOrganization

Reference

object

EducationOrganizationReference

MetaEd DSL Datatype: DomainEntityProperty

Yes

required

A reference to the education organization representing the context of the staff information.

IdentificationCode

String

string

IdentificationCode

MetaEd DSL Datatype: SharedStringProperty

No

 

 

required

A unique number or alphanumeric code assigned to an individual by a school,LEA, SEA, or other agency.

SQL Recommended Datatype: VARCHAR(60)

AssigningOrganization IdentificationCode

String

string