OData Annotations

OData Annotations

The metadata document exposed by the REST API includes additional information in the form of OData annotations.
These annotations provide useful metadata for localization, validation, and user interface purposes.


Supported Annotation Terms

Term Description
Org.OData.Validation.V1.StringLength Indicates the maximum allowed character length. Applies to string properties only.
Org.OData.Display.V1.DisplayName Specifies the display name of a property. Useful for labeling fields in user interfaces.

Example $metadata Response

HTTP/1.1 200 OK
Content-Length: 1548
Content-Type: application/xml
OData-Version: 4.0
<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
  <edmx:DataServices>
    <Schema Namespace="PROLIN.Web.OData.Model" xmlns="http://docs.oasis-open.org/odata/ns/edm">
      <EntityType Name="ServiceRequest">
        <Property Name="Solution" Type="Edm.String">
          <Annotation Term="Org.OData.Display.V1.DisplayName" String="Solution" />
          <Annotation Term="Org.OData.Validation.V1.StringLength" Int="4000" />
        </Property>
        ...
      </EntityType>
    </Schema>
  </edmx:DataServices>
</edmx:Edmx>

Practical Use

These annotations can be used by:

  • Developers to dynamically generate form fields and labels.
  • Validation frameworks to enforce field constraints (e.g., maximum string length).
  • Localization layers to present user-friendly property names in different languages.

💡 Tip:
When integrating with UI frameworks or custom API clients, leverage the OData annotations to dynamically adapt your interface without hardcoding validation or display labels.

Back to top