Skip to content
TermSync
Herefordshire Pupil Referral Service
Trace · URN 130991

How we read Herefordshire Pupil Referral Service

last read 27 Aug 2026, 12:48 UTC · took 70.7s · 67 dates across 3 school years

Nobody types these dates in. A program finds whatever the school publishes its term dates on and reads it. This page is the working out: the files we downloaded, and every date we got out of them. Open the same file and you can check us.

Find the page

saved for next time

We start at the school's website and follow it to whatever it publishes term dates on, in this case a file on hprs.hereford.sch.uk. That address is saved, so every later check goes straight there.

Download it

sha-256

4 files came back, fingerprinted so an unchanged page costs us nothing to re-check.

Read it

70.7s

This school publishes its year as a colour-coded chart rather than a list of dates, so a model reads it the way you would — square by square, working out from the key what each colour means. 1 other file was read and produced nothing useful.

Work out the dates

plain code

Ordinary code takes it from here, pairing those sentences into terms and filling in the holidays between them. It also checks the year adds up: if the dates leave too few school days, we throw the whole read away rather than publish it.

Save it

one copy

The dates get written down once. The school's page, your calendar feed and this trace all read that same copy, so they can't disagree with each other.

Where it came from

what we downloaded, and what we actually used

Every date we read off the chart

the file itself is linked above
2025/2624 dates
  • INSET Day1 Sept
  • INSET Day2 Sept
  • Autumn Term3 Sept – 14 Oct
  • INSET Day15 Oct
  • Autumn Term16 Oct – 24 Oct
  • October Half Term27 Oct – 31 Oct
  • Autumn Term3 Nov – 19 Dec
  • Christmas Holiday22 Dec – 2 Jan
  • INSET Day5 Jan
  • Spring Term6 Jan – 13 Feb
  • February Half Term16 Feb – 20 Feb
  • Spring Term23 Feb – 17 Mar
  • INSET Day18 Mar
  • Spring Term19 Mar – 27 Mar
  • Easter Holiday30 Mar – 10 Apr
  • INSET Day13 Apr
  • Summer Term14 Apr – 1 May
  • Bank Holiday4 May
  • Summer Term5 May – 22 May
  • May Half Term25 May – 29 May
  • Summer Term1 Jun – 16 Jun
  • INSET Day17 Jun
  • Summer Term18 Jun – 17 Jul
  • Summer Holiday20 Jul – 31 Aug
2026/2724 dates
  • INSET Day1 Sept
  • INSET Day2 Sept
  • Autumn Term3 Sept – 13 Oct
  • Bank Holiday14 Oct
  • Autumn Term15 Oct – 23 Oct
  • October Half Term26 Oct – 30 Oct
  • Autumn Term2 Nov – 18 Dec
  • Christmas Holiday21 Dec – 1 Jan
  • INSET Day4 Jan
  • Spring Term5 Jan – 12 Feb
  • February Half Term15 Feb – 19 Feb
  • Spring Term22 Feb – 16 Mar
  • Bank Holiday17 Mar
  • Spring Term18 Mar – 25 Mar
  • Easter Holiday26 Mar – 9 Apr
  • INSET Day12 Apr
  • Summer Term13 Apr – 30 Apr
  • Early May Bank Holiday3 May
  • Summer Term4 May – 28 May
  • May Half Term31 May – 4 Jun
  • Summer Term7 Jun – 15 Jun
  • Bank Holiday16 Jun
  • Summer Term17 Jun – 21 Jul
  • Summer Holiday22 Jul – 31 Aug
2027/2819 dates
  • INSET Day2 Sept
  • INSET Day3 Sept
  • Autumn Term6 Sept – 22 Oct
  • October Half Term25 Oct – 29 Oct
  • INSET Day1 Nov
  • Autumn Term2 Nov – 17 Dec
  • Christmas Holiday20 Dec – 3 Jan
  • INSET Day4 Jan
  • Spring Term5 Jan – 11 Feb
  • February Half Term14 Feb – 18 Feb
  • Spring Term21 Feb – 7 Apr
  • Easter Holiday10 Apr – 21 Apr
  • INSET Day24 Apr
  • Summer Term25 Apr – 28 Apr
  • Bank Holiday1 May
  • Summer Term2 May – 26 May
  • May Half Term29 May – 2 Jun
  • Summer Term5 Jun – 21 Jul
  • Summer Holiday24 Jul – 31 Aug

A chart states its dates in colour, not in words, so there is nothing to quote back at you. What we can show is every date we took off it — open the file above and the two should agree square for square.

What we saved

the single copy the school page and your calendar both read

This run

fingerprint
4c1671d1f4…5c8fb9a48c
saved at
25 Aug 2026, 20:43 UTC
run signature
700a964153…b88e44759d
dates published
49
last confirmed
27 August 2026

Why your calendar doesn't fill up with duplicates

Each event gets an ID built from who said it, what kind of day it is, and when it starts. Read the school again tomorrow and the same day comes out with the same ID, so your calendar updates the entry it already has rather than adding a second one.

# same inputs, same ID, every time
sha256(owner | kind | start)[:24]
a4384bdd…f1763a2c@termsync.co.uk