Skip to main content
Schema 2 uses one refusal discriminator everywhere:
An object is a refusal if and only if it contains unavailable. Do not replace it with 0, null, or an empty chart point. For the product decisions behind deliberately absent metrics, see why specific metrics are deliberately absent →.

Refusal grammar

Refusals can appear at four altitudes:
  • cell: one period of one field
  • field row: all requested periods for one field
  • block: one cause affects multiple fields
  • response: data itself is a refusal

Worked block refusal

Schema 2 is the default:
Trimmed from tests/fixtures/overview_v2/golden_overview_rivn_core.wire.json; shown values are unchanged.
The block refusal covers only fields that the missing share count would unlock. Other fields keep their own reasons.

Closed vocabulary

Resolve tokens with the refusal catalog:
Trimmed from tests/fixtures/v2_golden/reference_refusal_reasons.json.

doc_extracted

Most served fundamentals are direct tagged values or exact derivations from tagged operands. doc_extracted is an exceptional provenance class for a value extracted from the filed document rather than the normal direct XBRL face path, and it is stamped so an agent does not quote it as a plain direct tagged value. Schema 2 is the default:
Trimmed from tests/fixtures/render_v2/golden_doc_extracted_income_core.wire.json; shown values are unchanged.
The repo has a dedicated fixture for this class, but no committed coverage catalog with a measured frequency. Treat it as rare and explicitly stamped; do not publish a rate until the coverage catalog reports one.