All field notes
Mobile Apps88 signal · Spain’s changing TDT lineup

TV Channel Listings: Keep Data Accurate During a Lineup Change

A broadcast transition can make channel numbers and programme schedules disagree. Design your listings app around dated changes, trusted sources and a clear correction workflow.

OSIS Engineering
October 6, 2026 · 6 min read

A channel lineup change is not just a content update. It can leave an app showing a new channel number beside an old programme schedule, or a current schedule under a channel identity that has changed. Coverage in Spain describes changes to the free-to-air TDT lineup, including resynchronisation and a new broadcast phase. For an app team, that is a useful prompt to review how listing data is sourced, dated and corrected—not to treat headlines as a feed. The core product question is operational: how can a TV listings app keep channel numbers and programme data accurate during a broadcast transition? The answer starts with an explicit data contract and effective-time model.

01 / 03

Model channel identity separately from its number

A channel number is a property of a lineup in a particular market, not a durable identifier for a broadcaster or service. If a listing system uses the number as its primary key, a reassignment can accidentally attach the wrong schedule, artwork or saved preference to that number. Store a stable internal channel identifier separately from display name, market, delivery type and lineup position. Keep programme events linked to the channel identity, while representing the number as a dated assignment. This separation makes it possible to change a dial position without silently rewriting channel history or misattributing programmes.

Treat programme data as its own time-bounded record. A programme should have a start and end time, a channel identity, a source reference and a data status such as scheduled, updated or under review. A change to the lineup does not itself prove that a programme has moved or changed time. Preserve the distinction between a confirmed schedule update and a channel mapping change. For a hypothetical app, that means a user can see the new channel number while the programme record remains unchanged unless a schedule source actually revises it. This avoids using one transition event as a reason to infer several unsupported changes.

  • Use a stable channel ID; store each channel-number assignment with market and effective dates.
  • Keep programme revisions linked to their source and revision time.
02 / 03

Define source authority and effective dates

Before implementation, decide which source is authoritative for each field. A broadcaster or regulator may be suitable for service identity or lineup information, while a separate schedule provider may supply programme times. Do not assume one source covers every market or data type. Record source name, retrieval time, the period the data applies to, and any licence or usage constraints that affect product scope. The supplied coverage names RTVE and reports broader TDT changes, but it does not establish a complete, app-ready channel or programme feed. Treat it as context for investigation, not as data to ingest or a substitute for source validation.

Represent effective time explicitly instead of treating the moment a team imports a file as the moment a change takes effect. A record can be received today but apply from a future date; a correction can also arrive after its stated effective date. Keep both the source’s effective interval and the system’s received or recorded time. That distinction lets the app answer two different questions: what should a viewer see now, and what information did the system have when an earlier display was served? For a hypothetical Spanish-market launch, product and engineering teams should validate local dates, time zones, channel coverage and provider update cadence before promising transition-day accuracy.

  • Require an effective-from value and, where applicable, an effective-to value for lineup assignments.
  • Document fallback behaviour when a source is late, unavailable or incomplete.
03 / 03

Build a correction workflow before the transition

A reliable pipeline should validate incoming changes before they reach viewers. Check that channel identifiers exist, lineup assignments do not create unintended duplicates, programme intervals are valid, and revisions do not overlap in ways the product cannot explain. Route exceptions to a named reviewer rather than silently dropping records or publishing uncertain mappings. Store the incoming payload, validation result and resulting published version so an operator can compare what changed. These controls are particularly important when a late correction could affect many listings. The right degree of automation depends on the source contract and consequence of an error; automation should not obscure which data was accepted and why.

Give operations staff a reversible way to correct an error: compare the current and proposed records, approve or reject the change, then publish a versioned update. Record who made the decision and when, and keep a rollback path. In the app, explain uncertainty plainly: show when listings were last updated, distinguish confirmed data from a pending correction, and avoid presenting a stale number as authoritative. A practical MVP can begin with one defined market, one documented source for each data type, scheduled imports, validation alerts and a manual review queue. Expand automation only after the team understands the source’s behaviour and has tested the correction path.

  • Test future-dated changes, late corrections, duplicate numbers and missing programme data.
  • Define an owner and response path for each validation failure.

A changing broadcast lineup is a data-governance and product-reliability problem as much as a display problem. Keep channel identity separate from channel number, distinguish schedule changes from lineup changes, and record both effective dates and ingestion times. Then make source ownership, validation and correction reversible and visible to operators. Before estimating a listings app, confirm which markets and data providers are in scope, how frequently they update, and who handles exceptions. Those decisions shape integration effort, operational workload and the accuracy users can reasonably expect.