You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For ease of client use and interoperatibility, some APIs should implement a standard that is defined external to Microsoft Graph and OData.
335
+
Workloads should follow these standards exactly, even if they conflict with the OData standard and/or the Microsoft Graph guidelines.
336
+
Workloads must define these standards in their CSDL model if they do not conflict with the OData standard.
337
+
Standards that *do* conflict with the OData standard may be defined in the CSDL in one of two ways:
338
+
1. Using `Edm.Untyped` only and support for the external standard will come directly from the service implementation; OR
339
+
2. Adding CSDL elements to model the external standard using `Edm.String` for `EnumType`s that conflict with the OData standard and `Edm.Untyped` wherever any other conflict with the OData standard occurs
340
+
341
+
The benefit of the second approach is that strongly-typed models have SDK support for clients and also have significant tooling support for both the workload and clients. Note that it is backwards compatible for a workload to migrate from the second approach to the first approach in case the external standard is *initially* compliant with the OData standard and *later* conflicts with the OData standard.
342
+
331
343
## API contract and non-backward compatible changes
332
344
333
345
The Microsoft Graph definition of breaking changes is based on the
0 commit comments