x-ms-discriminator-value
`x-ms-discriminator-value` appears on schema objects and properties. Its value is a string. Used by 4 providers across 198 OpenAPI documents. It sits in the `x-ms-` namespace, so its meaning is defined by ms tooling rather than by OpenAPI. Observed values include `A2A`, `#microsoft.graph.user`, `InMageRcm`, `#microsoft.graph.group`. Consistent with type system — this is inferred from where the key appears and what it carries, not from any published definition.
Where it appears
| Location in the document | Occurrences | |
|---|---|---|
| schema | 4051 |
What its value looks like
| Value shape | Occurrences |
|---|---|
| string | 4049 |
| object | 2 |
Observed values
Sampled from the specifications, most frequent first.
Providers publishing it
All 4.
Why this is not in OpenAPI
Extensions exist because a provider needed something the specification would not carry. Most of what they hold is not the API contract at all — it is operational metadata about the contract: documentation, lifecycle, policy, provenance, and now agents. That metadata is usually better placed alongside the contract, in an Overlay or an APIs.json index, than crammed inside it. See everything else doing the data & schema semantics job.