9 - Add Enumeration Property
Version Note
The following documentation applies to the Ed-Fi Data Standard v2.x. In version 3 and beyond, all enumeration types have been implemented as Ed-Fi Descriptors.
Problem
The design of a MetaEd model requires the addition of an enumeration property to an entity.
Solution
Identify the affected entity in the MetaEd source files. Add the enumeration property and rebuild MetaEd. All technical artifacts related to the property will be updated.
Discussion
An enumeration property defines a reference to an enumeration for the containing entity. Enumeration name should be the name of an existing enumeration type. If the containing entity defines more than one enumeration property of the same type, the role name
should be used to differentiate between the properties (see the Add Reference with Role Name Cookbook entry). This syntax can also be used to add contextual information about the enumeration.
Consider the following code snippets:
Enumeration SchoolYear documentation "Identifier for a school year." item "1990-1991" ...
Domain Entity School based on EducationOrganization documentation "This entity represents an educational organization that includes..." ...
Imagine that School needs to change to add information on the school year that a charter school was approved. The SchoolYear enumeration is already available. This is a very specific usage of SchoolYear, so this will be modeled as a CharterApproval role name for SchoolYear. The code for School with this enumeration added should then look like:
Domain Entity School based on EducationOrganization documentation "This entity represents an educational organization that includes..." ... enumeration SchoolYear documentation "The school year in which a charter school was initially approved." is optional role name CharterApproval