Portable

Emit only the intersection accepted by all major structured-output modes (OpenAI strict mode, Anthropic strict tool use, Gemini, and grammar-constrained local inference engines). Nullability uses type arrays, unions use anyOf, every object sets additionalProperties: false with all properties required, nesting is capped at five levels, and size constraints such as maxItems are expressed as description text instead of constraint keywords. This is the default and the safest choice when the consuming provider is not known up front.