Changelog
This changelog lists all notable changes to the Benefit Plan Standard. For a high‑level overview of changes in each release, see the release notes. The format is based on Keep a Changelog and adheres to Semantic Versioning.
[Unreleased]
Added
- Placeholder for future changes since the last release. Once changes are merged into
mainornext, they will be listed here until a new version is tagged.
[1.1.0] — 2026‑05‑21
Backward-compatible minor release. v1.0.0 documents validate against v1.1.0 unchanged.
Added
- Plan identity:
plan_year(integer),coverage_period(start_date+end_date), andmarketat the top level. - Out-of-network accumulators: four new slots —
oon_individual_deductible,oon_family_deductible,oon_individual_oop_max,oon_family_oop_max. Closes the v1.0.0 gap where PPO plans with separate in/out-of-network accumulators could not be fully represented. - Richer accumulator metadata:
period,network_tier, andembeddedfields on every accumulator slot.applies_tois now also available on OOP-max slots (parity with deductibles). - Benefit discriminator:
benefit_typefield onbenefits[]items — enables future modules (pharmacy,dental,vision,behavioral_health) without restructuring. - Benefit identity:
canonical_key(machine-readable canonical identifier) andraw_label(verbatim source-document label) onbenefits[]items. - Cost-share notes: optional
notesfield oncost_shares[]items. - Recommended vocabularies: 100 canonical benefit identifiers, 25 categories, 12 markets, 12 plan types. See the vocabularies directory.
- FHIR alignment guide: field-by-field BPS ↔ FHIR R4
InsurancePlanmapping with worked example, lossy-mapping table, and round-tripping guidance. See docs/fhir-alignment.md. - Expanded examples: all 7 carrier example plans now cover 25–30 benefits each (198 total), spanning the full SBC service inventory.
- Repository hygiene:
LICENSE(MIT) and.gitattributesadded to the schema repo.
Fixed
- Documentation:
product_type→plan_type,individual_oop/family_oop→individual_oop_max/family_oop_max,source_refs→source_references. The published schema was already correct; only the docs were out of sync. examples/scan_example.json: removednotesfrom insidecost_shares[]items (would have failedadditionalProperties: false). The samenotesfield is now formally defined oncost_shares[]in v1.1.0.
Backward compatibility
- All v1.0.0 required fields remain required.
- All v1.0.0 optional fields remain present with the same types.
- All additions are optional;
additionalProperties: falseboundaries are respected. - A document declaring
"schema_version": "1.0.0"validates against the v1.1.0 schema without changes.
[1.0.0] — 2025‑11‑30
Added
- Initial schema covering plan metadata, network tiers, accumulators, benefits, limits, conditions, and source references.
- Carrier crosswalk with mappings for Blue Cross, GatorCare, SCAN, Aetna, UnitedHealthcare, Cigna, and Humana; plus blank columns for future carriers.
- Field definitions describing the purpose, type, and usage of each normalized field.
- Modules page summarizing core modules and how to extend the schema.
- Specification overview explaining design principles, normative vocabulary, and interoperability goals.
- Documentation site built with Docusaurus and published at
benefitplanstandard.org.
Changed
- None (initial release).
Removed
- None (initial release).