Ed-Fi Descriptors

Descriptors in the Ed-Fi Data Standard are a set of mechanisms to support flexible enumerations or code tables. Each Descriptor has the following attributes: 

  • [abc]DescriptorId (primary key)[7]
  • namespace
  • codeValue
  • shortDescription
  • description
  • priorDescriptorId
  • effectiveBeginDate
  • effectiveEndDate
  • A map back to an Ed-Fi enumeration value

The GET of a resource must return the namespace and codeValue for Descriptor enumerations. Other components of the Descriptor can be retrieved from the Descriptor resource.

The PUT or POST of a resource must specify the namespace and codeValue for each Descriptor value.

URI Construction and HTTP Verb Usage for Ed-Fi Descriptors

Descriptors are also exposed as Resources of an Ed-Fi REST API and can be accessed and manipulated as follows:

Table 3. Accessing and Manipulating Descriptors

ResourcePOSTGETPUTDELETE
/[abc]Descriptors

Adds a new Descriptor

Gets all Descriptors for the subtypeErrorError
/[abc]Descriptors/{id}
ErrorGets all attributes for an individual DescriptorUpdates an individual DescriptorDeletes an individual Descriptor

Descriptor References

References to a Descriptor value are a URI constructed with the namespace followed by the URL-encoded codeValue: 

[namespace]/[codeValue]

For example, to refer to the behaviorDescriptor value in the Ed-Fi namespace with a codeValue of “School Violation,” the reference would be the following URI:

https://www.ed-fi.org/Descriptor/BehaviorDescriptor.xml/School%20Violation

 Implementations may provide a default namespace that allows client systems to provide codeValues without the namespace prefix. 


Where [abc] is the name of a specific Descriptor.