Files
DanielandClaude Sonnet 5 f41666b3d6 ALKIS-Objektartenkatalog als Wissensbasis fuer GID6 und GID7 angelegt
Atomare Markdown-Wissensdateien je Objektart/Datentyp (Beschreibung, Attribute,
Codelisten, Bildungsregeln, Konsistenzbedingungen, Relationen inkl. Gegenrolle),
maschinell erzeugt aus den ADV-Katalog-XML unter referenz/alkis/ (unversioniert).

Zwei getrennte Baeume, weil operativ noch GID6 laeuft und GID7 erst der Zielstand
ist: docs/wissen/alkis/gid6/ (189 Klassen, WFS-Produktivstand, fuer Plugin-Code
massgeblich) und docs/wissen/alkis/gid7/ (209 Klassen, kuenftige Umstellung).

Vererbung wird nicht in jede Datei hineinkopiert (Drift-/Tokenrisiko), sondern per
Inline-Hinweis auf die Oberklasse referenziert plus on-demand ueber
_werkzeuge/parse_alkis.py resolve aufgeloest; ein diff-Modus vergleicht eine
Klasse zwischen beiden Versionen. alkis_objektarten.md verweist jetzt auf beide
Versionsbaeume.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-14 09:55:27 +02:00

55 lines
2.6 KiB
Markdown

# ALKIS-Objektartenkatalog — Versionsüberblick
Dieser Ordner enthält den vollständigen ALKIS-Objektartenkatalog (AAA-Anwendungsschema) in zwei
Versionen, je als Baum aus atomaren Markdown-Wissensdateien (eine je Objektart/Datentyp).
| Version | Ordner | Bedeutung | Katalog-Stand |
|---|---|---|---|
| GID6 | [`gid6/INDEX.md`](gid6/INDEX.md) | **Aktueller Produktivstand** — das, was der sächsische WFS-Dienst tatsächlich ausliefert | AAA-Anwendungsschema 6.0.1 |
| GID7 | [`gid7/INDEX.md`](gid7/INDEX.md) | **Zielstand** — künftige Umstellung | AAA-Anwendungsschema 7.1.2 |
**Für die laufende Plugin-Entwicklung (WFS-Zugriff) ist GID6 maßgeblich**, solange die Umstellung
nicht vollzogen ist. GID7 dient dem Abgleich, was sich mit der Umstellung ändert (siehe `diff`-Modus
unten) — nicht als Quelle für aktuellen Produktivcode.
## Woher die Dateien kommen
Beide Bäume sind **maschinell aus den Katalog-XML-Dateien erzeugt** (nicht von Hand gepflegt, nicht
von Hand editieren). Die Rohdaten liegen bewusst außerhalb der Versionskontrolle unter
`referenz/alkis/` (siehe `.gitignore`):
- `referenz/alkis/ALKIS-Anwendungsschema_6.0.1.xml`
- `referenz/alkis/ALKIS-Anwendungsschema_7_1_2.xml`
Neu erzeugen (überschreibt den jeweiligen Ordner vollständig):
```
python _werkzeuge/parse_alkis.py generate gid6 "AAA-Anwendungsschema 6.0.1 (Produktivstand)" ../../../referenz/alkis/ALKIS-Anwendungsschema_6.0.1.xml
python _werkzeuge/parse_alkis.py generate gid7 "AAA-Anwendungsschema 7.1.2 (Zielstand)" ../../../referenz/alkis/ALKIS-Anwendungsschema_7_1_2.xml
```
## Zwei Werkzeuge statt Duplizieren
Um Wissen nicht in vielen Dateien redundant vorzuhalten (Drift-Risiko, Tokenkosten), löst das Skript
Vererbung und Versionsunterschiede **on demand** auf, statt sie statisch in jede Datei zu kopieren:
**Vererbungskette einer Klasse auflösen** (alle effektiven Attribute/Relationen inkl. geerbter,
ohne Datei-Hopping über die Oberklassen):
```
python _werkzeuge/parse_alkis.py resolve <pfad-zur-xml> AX_Grenzpunkt
```
**Zwei Versionen für eine Klasse vergleichen** (nur die Unterschiede, berechnet statt gepflegt):
```
python _werkzeuge/parse_alkis.py diff referenz/alkis/ALKIS-Anwendungsschema_6.0.1.xml referenz/alkis/ALKIS-Anwendungsschema_7_1_2.xml AX_Grenzpunkt
```
## Siehe auch
- [`../alkis_objektarten.md`](../alkis_objektarten.md) — schlanke Praxis-Übersicht dessen, was
`sn_verfahrensgebiet` tatsächlich aus dem (GID6-)WFS-Dienst nutzt, inkl. abweichender/abgeflachter
Feldnamen im realen Dienst.
- [`../fallstricke.md`](../fallstricke.md), [`../glossar.md`](../glossar.md)