docs: add domain workshop results and event structure diagram
- Documented outcomes of the 2026-03-17 domain workshop under `docs/03_Domain/03_Analysis/Domain_Workshop_Results_2026-03-17.md`. - Added a structural diagram visualizing events, tournaments, and competitions with their relationships under `docs/03_Domain/01_Core_Model/Entities/Event_Structure_Diagram.md`. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -0,0 +1,89 @@
|
||||
# Turnier- & Bewerbsstruktur Diagramm
|
||||
|
||||
Dieses Diagramm zeigt die strukturelle Hierarchie und die Beziehungen zwischen Event, Turnier und Bewerb basierend auf
|
||||
dem ÖTO-Regelwerk und den Anforderungen der OEPS-Schnittstelle.
|
||||
|
||||
```mermaid
|
||||
erDiagram
|
||||
%% Entities
|
||||
EVENT {
|
||||
string id PK "UUID"
|
||||
string name "z.B. Apropos Pferd 2026"
|
||||
date start_date
|
||||
date end_date
|
||||
string location
|
||||
string organizer_id FK "Veranstalter (Akteur)"
|
||||
string status "PLANNING, ACTIVE, ARCHIVED"
|
||||
}
|
||||
|
||||
TOURNAMENT {
|
||||
string id PK "UUID"
|
||||
string event_id FK
|
||||
string oeps_number "z.B. 21001 (A-Satz)"
|
||||
string category "z.B. CSN-A, CDN-B"
|
||||
string ruleset "OETO oder FEI"
|
||||
}
|
||||
|
||||
COMPETITION {
|
||||
string id PK "UUID"
|
||||
string tournament_id FK
|
||||
string code_internal "2-stellig (B-Satz Pos. 2)"
|
||||
string code_official "3-stellig (B-Satz Pos. 61)"
|
||||
int division_id "Abteilung (0=keine, 1=Abt. 1...)"
|
||||
string title "z.B. Standardspringprüfung"
|
||||
string category "Klasse z.B. L, M, S*"
|
||||
string discipline "S (Springen), D (Dressur), C"
|
||||
string scoring_method "Richtverfahren (z.B. A0, A2)"
|
||||
int start_fee "in Cent"
|
||||
string status "OPEN, RUNNING, FINISHED"
|
||||
}
|
||||
|
||||
OFFICIALS {
|
||||
string id PK "UUID"
|
||||
string tournament_id FK "oder competition_id"
|
||||
string actor_id FK "Richter / Parcoursbauer"
|
||||
string role "Hauptrichter, Richter, TD"
|
||||
}
|
||||
|
||||
%% Relationships
|
||||
EVENT ||--o{ TOURNAMENT: "beinhaltet"
|
||||
TOURNAMENT ||--o{ COMPETITION: "besteht aus (B-Satz)"
|
||||
TOURNAMENT ||--o{ OFFICIALS: "hat Funktionäre (C-Satz)"
|
||||
COMPETITION ||--o{ OFFICIALS: "wird gerichtet von"
|
||||
```
|
||||
|
||||
## Erläuterung zum Modell (Option B)
|
||||
|
||||
### 1. `EVENT` (Veranstaltung)
|
||||
|
||||
Das **Event** ist der übergeordnete organisatorische Rahmen (z.B. "Pferdefestival 2026"). Es hat ein Datum, einen Ort
|
||||
und einen Veranstalter. Es existiert unabhängig von den strikten OEPS-Regularien und ist primär für die administrative
|
||||
Verwaltung (Rechnungsstellung, Anlagenplanung) wichtig.
|
||||
|
||||
### 2. `TOURNAMENT` (Turnier)
|
||||
|
||||
Ein Event kann mehrere **Turniere** beinhalten (z.B. ein nationales CSN-B und gleichzeitig ein internationales CSI2*).
|
||||
Das Turnier ist die Instanz, die strikt an das Regelwerk gebunden ist:
|
||||
|
||||
* Es korrespondiert 1:1 mit dem **A-Satz** des OEPS-Pflichtenhefts.
|
||||
* Es hat eine eindeutige 5-stellige `oeps_number`.
|
||||
* Es legt fest, nach welchem Regelwerk (ÖTO vs. FEI) geritten und ausgewertet wird.
|
||||
|
||||
### 3. `COMPETITION` (Bewerb / Prüfung)
|
||||
|
||||
Die kleinste sportliche Einheit und das Herzstück der Ausschreibung.
|
||||
Hier finden wir die direkte Verbindung zum **B-Satz** der Legacy-Spezifikation:
|
||||
|
||||
* **Abteilungen (`division_id`):** Laut OEPS-Schnittstelle wird jede Abteilung (z.B. R1-Reiter getrennt von R2-Reitern)
|
||||
datentechnisch fast wie ein eigener Bewerb behandelt. In unserer Datenbank repräsentieren wir jede Abteilung als
|
||||
eigene Zeile in der Tabelle `competition` (oder verknüpfen sie intelligent), da jede Abteilung ihre eigene
|
||||
Ergebnisliste und ihr eigenes Preisgeld hat.
|
||||
* **Nummerierung:** Intern 2-stellig (`code_internal`), für Turniere ab 100 Bewerben offiziell 3-stellig (
|
||||
`code_official` an Stelle 61).
|
||||
* **Richtverfahren:** Entscheidet darüber, wie Fehler und Zeit (Springen) oder Wertnoten (Dressur) in ein Ranking
|
||||
übersetzt werden.
|
||||
|
||||
### 4. `OFFICIALS` (Funktionäre)
|
||||
|
||||
Dies entspricht dem **C-Satz**. Richter und Parcoursbauer müssen einem Turnier oder spezifisch einem Bewerb zugewiesen
|
||||
werden. Deren 6-stellige OEPS-Nummer (Satznummer) wird für den Ergebnis-Export benötigt.
|
||||
Reference in New Issue
Block a user