Skip to content

RegistrationDistrict2007Code

NRS data dictionary (extracted; reviewed (AI-assisted review, 2026-10-02, record))

Dictionary table Type Range Description
spd small user (spd-indexdatadictionary-2026-2.docx) Char(9) S12000005 to S12000050 A code that identifies a 2019 Council Area. Note that following the Local Electoral Administration and Registration Services (Scotland) Act 2006, Registration Districts boundaries are the exact same as Council Area boundaries.
spd large user (spd-indexdatadictionary-2026-2.docx) Char(9) S12000005 to S12000050 A code that identifies a 2019 Council Area. Note that following the Local Electoral Administration and Registration Services (Scotland) Act 2006, Registration Districts boundaries are the exact same as Council Area boundaries .
sspl (SSPL Data Dictionary 2026-2.docx) Char(9) S12000005 to S12000050 A code that identifies a 2019 Council Area. Note that following the Local Electoral Administration and Registration Services (Scotland) Act 2006, Registration Districts boundaries are the exact same as Council Area boundaries .
Table Type Nullable Category In the CSV export SQL Server type
history table (postcode_simd_history, SPD) string no NRS Scottish Postcode Directory field yes nvarchar(200)
main table (postcode_simd, SSPL) string no NRS Scottish Statistics Postcode Lookup field yes nvarchar(200)

Provenance in the history table (postcode_simd_history, SPD)

Where it comes from

Input Field Condition Reaches the row by
SPD/spd_postcodeindex_cut_26_2_csv/SmallUser.csv (pinned, SHA256 fc82f1091ac1…) RegistrationDistrict2007Code records of the small-user file the row itself
SPD/spd_postcodeindex_cut_26_2_csv/LargeUser.csv (pinned, SHA256 dcb060cbce01…) RegistrationDistrict2007Code records of the large-user file the row itself

Scope: the row itself.

What was done to it: copied. Copied as text from the NRS Scottish Postcode Directory, unchanged; the two files are stacked. (code: simd_ingest/core/spd.py: read_index_file, union_index)

How it is checked (what each check tests; whether a build passed it is in that build's manifest.json["checks"])

  • spd.small_user.schema: the SPD file's header is exactly the reviewed header, in order
  • spd.large_user.schema: the SPD file's header is exactly the reviewed header, in order
  • spd.columns: the two SPD files together carry the expected columns
  • readback.history.index_columns: the saved file's NRS columns equal the source, re-read

Why: spd-cut-edition, single-combined-output, record-key

Provenance in the main table (postcode_simd, SSPL)

Where it comes from

Input Field Condition Reaches the row by
SSPL/sspl-2026-2/SingleRecord.csv (pinned, SHA256 a6b23a9abfbd…) RegistrationDistrict2007Code the row itself

Scope: the row itself.

What was done to it: copied. Copied as text from the NRS Scottish Statistics Postcode Lookup, unchanged. (code: simd_ingest/core/sspl.py: build_latest_index)

How it is checked (what each check tests; whether a build passed it is in that build's manifest.json["checks"])

  • sspl.schema: the SSPL file's header is exactly the reviewed header, in order
  • readback.main.index_columns: the saved file's NRS columns equal the source, re-read

Why: sspl-main-table, sspl-allocation-is-part-of-the-contract, two-nrs-cuts