# FEI Entry Screening — User Guide

When FEI entries are imported into Equipe, riders and horses arrive with **free comments** written by the declarants, in any language. This extension reads them for you and builds, inside the show:

- **height block lists** — riders approved only up to a certain height, read from the comments by a local AI;
- **age lists** — riders who may not ride certain classes because of their age, computed from the **FEI rules** (no AI involved).

Nothing to launch: it runs **by itself** each time FEI entries are imported. A **review screen** in Equipe shows what it could not decide, so you can finish the job.

The AI runs on the organiser's own network: **no data leaves the site**.

---

## 1. What you get in Equipe

The extension creates **lists** (marked `L`), never classes. Each list has:

- a short code, e.g. `CSI1*-U14` or `W2CSI2*-U18`;
- a clear name, e.g. *CSI1\* - under 14 years - 1m30 block*;
- the date of the show week it belongs to.

**Your job:** attach each list to the classes it concerns. Nothing else in the show is changed: no class is modified, no entry is removed.

---

## 2. Height block lists

The AI looks in each comment for a sentence saying that a rider is **approved only up to a certain height**, at a certain level.

Each level and height gets its own list, for example *CSI3\* – riders limited to 1.45 m*.

If the AI finds no restriction but a height appears in the comment, the case is **not ignored**: it goes to the review screen for you to decide.

---

## 3. Age lists

### How the age is found

The age is read from the **date of birth in the rider's record in Equipe**. Accepted formats: `1995`, `1995-10-19`, `19/10/1995`, `19.10.1995`. Anything else (an FEI ID, a passport number…) is ignored.

The age used is the **FEI age**: the age the rider reaches during the calendar year. A rider born in 2012 is 14 for the whole of 2026.

> **Important:** a rider without a readable date of birth is in **no age list**. Check these riders by hand before the show (see [Coverage](#coverage)).

### The FEI rules applied

Source: **FEI Jumping Rules 2026, article 205**. Each column is a list of riders who are **blocked**.

| Level | not eligible | max 1m30 | max 1m40 | all classes | under 18 also barred from |
|---|---|---|---|---|---|
| CSI1\* | under 12 | 12–13 | — | from 14 | Power and Skill / Derby |
| CSI2\* | under 12 | 12–13 | 14–15 | from 16 | Power and Skill / Derby |
| CSI3\*–5\* | under 12 | 12–13 | 14–15 | from 16 | GP / Derby / Power and Skill / highest prize money |
| CSIO1\*–5\* | under 12 | 12–13 | 14–15 | from 16 | GP / Nations Cup / World Cup / Derby / Power and Skill / highest prize money |
| CSIYH | under 12 | 12–13 | 14–15 | from 16 | Power and Skill / Derby |
| CSIAm | under 12 | 12–13 | — | from 14 | Power and Skill / Derby |

Example: at a CSI2\*, a rider aged 12 or 13 is limited to 1m30, aged 14 or 15 to 1m40, and from 16 rides everything, Grand Prix included. The last column applies to **every** rider under 18.

**Youth categories** work as windows: outside them, a rider is not eligible at all, whether too young **or too old**.

| Category | Eligible ages |
|---|---|
| Juniors | 14 to 18 |
| Young Riders | 16 to 21 |
| Children | 12 to 14 |
| Pony Riders | 12 to 16 |
| U25 | 16 to 25 — from 14 if the first round stays at 1m40 |
| Veterans | 45 and over |

A twenty-year-old entered in a Juniors class gets his own list: *this rider should not be entered here at all*.

### Attaching the lists — points to watch

- **CSI1\*** has no limit at 16: from 14, everything is open.
- **Power and Skill** and **Derby** are closed to under-18s at **every** level, amateur classes included. The **Grand Prix** is closed to under-18s only from CSI3\* and at CSIO.
- Height limits apply to the **first round**: a 1m40 class whose first round is at 1m30 is open to a thirteen-year-old.
- A height list must be attached to **every class above its limit, Grand Prix included**. Example at a CSI2\* Grand Prix at 1m45: a fourteen-year-old is blocked by the *1m40* list, a sixteen-year-old by the *under 18* list. Two different lists close the same class.

### Shows over several weeks

When the show covers several FEI events, each week gets its **own lists**, labelled `W1`, `W2`… in date order, each containing **only that week's riders**. A one-week show has no label.

### Coverage

The extension cannot block a rider whose date of birth it cannot read. The report gives, **for each masterlist**, the share of riders with a known date of birth and the entry numbers of those without.

> Seen in practice: a masterlist showing *0 minors* while a third of its riders had no date of birth — a whole delegation entered without one. **Always check the coverage per masterlist**, not the overall figure.

On request, a show can be set to **produce no age list at all** for a masterlist below a chosen coverage, rather than a partial list that looks complete.

---

## 4. The review screen

Open it from Equipe. It lists everything the extension **did not decide on its own**:

| Column | Meaning |
|---|---|
| Type | Disagreement with the AI, unresolved case, or rider note |
| Rider | Name and entry number |
| Comment | The original text |
| Why | Why the extension did not act |
| Add to | Add the rider to a list in one click — or **Ignore** |

- The button shows **Already in** when the rider is already in the selected list.
- **Age lists cannot be chosen here**: they are computed from dates of birth only. To fix an age list, correct the date of birth in Equipe.
- A rider you add by hand stays in the list: the next import will not duplicate or remove it.

### Ignore a case

Some comments will never matter (a horse name in the wrong field, a request for electricity, a note to the office). Click **Ignore**:

- the case moves to the **Set aside** section below, with the date and a **Bring back** button;
- nothing is deleted;
- if the comment is **changed** in Equipe, the case comes back automatically — a new text is a new request;
- set-aside cases are per show.

---

## 5. When it runs

- Automatically, **each time FEI entries are imported** into the show.
- Analysing a full show takes a couple of minutes.
- Each import updates the lists: new riders are **added**; riders already listed are not duplicated.
- The extension **never removes** anything.

---

## 6. Safety

- **Nothing is written when in doubt**: uncertain cases go to the review screen.
- **Nothing is removed or modified**: the extension only creates lists and adds riders to them.
- **An import run can be undone in Equipe in one action.**
- **Deleting a list** in Equipe removes it completely; the next import rebuilds it from the current data.
- A level the extension does not recognise produces **no list** rather than a guess.
- On request, a show can run in **test mode**: everything is computed and shown, nothing is written.

---

## FAQ

**No list appeared after an import.**
Open the review screen. If it refers to another show, the extension has not run on this one yet: import the entries again. If it is the right show, nothing matched — that is a valid result.

**The review screen says there is no report.**
The extension has not run yet since it was installed: import the entries, then reopen it.

**A rider I expected is in no age list.**
Check their date of birth in Equipe. Without a readable date, the extension does not guess.

**A list exists but is empty.**
Note its name and contact the administrator.

**A case comes back after Ignore.**
Its comment was changed in Equipe. This is intended.

**The AI could not read a comment.**
The case is in the review screen with the reason: add the rider to a list or set the case aside.

**A list is wrong.**
Delete it in Equipe; the next import rebuilds it from the current data.

**Equipe reports the import notification as failed.**
The extension did not receive it. Contact the administrator with the show number and the time of the import.

For any other problem, contact the administrator with the **show number** and the **time of the import**.
