2 min readBlockingBank of England taxonomy 2.2.0Updated 11 November 2026

Non-life income and expenditure and 2 other templates: a conditional check (IR.05.04, IR.19.01, IR.19.02, Bank of England rule IR_bv3035_01)

A blocking check on the non-life income and expenditure (IR.05.04), non-life claim development (IR.19.01) and non-life general liability claim development (IR.19.02) templates, in the annual solo (ARS) and annual third-country branch (ARB) returns.

The rule in plain words

If IR.05.04, Gross (undiscounted) claims provision at end of the period (R0630 + R0631, C0190) is greater than zero, Then IR.19.02.01.03, Line of business (Z0010) = "General liability insurance - Employers Liability [direct business and accepted proportional reinsurance]" must be present in the Gross undiscounted Best Estimate Provisions for Claims Outstanding triangle

The headline gives only the template and the kind of check, because the rule is too long to say in a headline. The plain words above say all of it.

What to do if your return fails it

  1. 01Open the tables below and find the cells the rule reads.
  2. 02The check applies only when its first part holds in your return. When it does, the second part must hold too: fix the second part, or correct the first.
  3. 03It runs only when your filing indicators mark IR.05.04 and IR.19.02 as reported.
  4. 04This is a blocking check. A return that fails it is normally rejected, so fix it before you submit.

The cells it reads

Non-life income and expenditure: non-life income, expenditure and business model analysis: reporting period (IR.05.04.01.01)

Rows

  • R0630Gross (undiscounted) claims provision at end of the period - insurance (direct)
  • R0631Gross (undiscounted) claims provision at end of the period - accepted reinsurance

Column

  • C0190Employers Liability (sub-class of line of business 8)

Non-life claim development: gross undiscounted best estimate provision for claims outstanding - development year (absolute amount) (IR.19.01.01.03)

Rows

  • R0100Prior
  • R0110N-14
  • R0120N-13
  • R0130N-12
  • R0140N-11
  • R0150N-10
  • R0160N-9
  • R0170N-8
  • R0180N-7
  • R0190N-6
  • R0200N-5
  • R0210N-4
  • R0220N-3
  • R0230N-2
  • R0240N-1
  • R0250N

Columns

  • C02000
  • C02101
  • C02202
  • C02303
  • C02404
  • C02505
  • C02606
  • C02707
  • C02808
  • C02909
  • C030010
  • C031011
  • C032012
  • C033013
  • C034014
  • C035015 & +

Non-life general liability claim development: gross undiscounted best estimate provision for claims outstanding - development year (IR.19.02.01.03)

Rows

  • R0100Prior
  • R0110N-14
  • R0120N-13
  • R0130N-12
  • R0140N-11
  • R0150N-10
  • R0160N-9
  • R0170N-8
  • R0180N-7
  • R0190N-6
  • R0200N-5
  • R0210N-4
  • R0220N-3
  • R0230N-2
  • R0240N-1
  • R0250N

Columns

  • C02000
  • C02101
  • C02202
  • C02303
  • C02404
  • C02505
  • C02606
  • C02707
  • C02808
  • C02909
  • C030010
  • C031011
  • C032012
  • C033013
  • C034014
  • C035015 & +

Which returns it applies to

Line4 Check runs it on annual solo (ARS) and annual third-country branch (ARB) returns on Bank of England taxonomy 2.2.0. The Bank of England applies it to annual third-country branch (ARB) and annual solo (ARS) returns, as a blocking check.

The Bank’s own words and formula

The plain words above are the Bank of England’s own, word for word, from its list of validations.

Show the formulaShow

The Bank of England's formula. Cells are written as {t: table, r: row, c: column}.

if sum({t: IR.05.04.01.01, r: R0630; R0631, c: C0190}) > 0 then count({t: IR.19.02.01.03, r: R0100; R0110; R0120; R0130; R0140; R0150; R0160; R0170; R0180; R0190; R0200; R0210; R0220; R0230; R0240; R0250, c: C0200; C0210; C0220; C0230; C0240; C0250; C0260; C0270; C0280; C0290; C0300; C0310; C0320; C0330; C0340; C0350, z: Z0001, filter: [s2c_dim:BL] = [boec_s2c_LB:b57]}) >= 1 else true()

Every Solvency UK rule on IR.05.04

Checks like this one, run at the point of submission, are the first step to real-time supervision. Line4 builds SupTech software for financial regulators that runs checks like these as each return arrives.