Open-data citation feeds add optional fields over time. How should schema drift be managed?
Select an answer to reveal the explanation.
Short Explanation
Optional new citation fields are like adding a stickers box to your form — you'll want to version the evolved schema so you've got a clear history. Bumping a major version for every optional isn't right since it's not breaking, and you'll force needless rework. You'll break downstream reads if you ship a removed required field as just a minor bump since it's breaking and needs a major signal, and you'll hide real growth if you log new optional fields as just a patch since you won't show the added capability.
Full Explanation
Open-data citation feeds that add optional fields over time should manage schema drift through versioned evolved schemas rather than issuing a major version increment for newly added optional citation fields. Versioning documents the new optional columns, keeps historical reads stable, and lets portal extracts adopt fields deliberately. That approach matches how civic open-data programs grow attributes without constant fire drills.
Issuing a major version increment for newly added optional citation fields fails by concept: it treats routine backward-compatible additions as breaking changes and forces unnecessary downstream migration instead of documenting them as minor evolved versions for deliberate adoption. Publishing a minor version increment rather than major for removed required fields fails by concept: it treats a breaking removal as backward-compatible growth, so downstream readers expecting the required column break without a major-version signal and historical reads and portal extracts lose stability. Recording a patch version increment while adding new evolved optional citation fields fails by concept: it labels backward-compatible feature growth as a mere fix, so consumers cannot tell that a new capability was deliberately added and version history understates the change instead of publishing it as a governed minor version.
Exam caveat: Distinguish breaking drift (type changes, dropped required columns) from additive optional fields. Enforcement that blocks unknown columns is right for untrusted widening; planned evolution/versioning is right when optionals are expected. Do not delete history to "fix" schema growth.
Operational check: Add an optional citation field in a staging feed, register a new schema version, and confirm pipelines continue with prior versions readable. Prove that issuing a major version increment for each optional field overstates compatible growth and forces needless migration instead of enabling a minor evolved-version rollout. Ensure historical citation tables remain queryable and portal CSV contracts update only after version publish.
Prefer to study offline? Printable PDF study book + test engine ($7.50, unofficial). These questions stay free here.