# SAGis XPlanung Dokumentation

> Dokumentation für Anwender des SAGis XPlanung, einer QGIS-Erweiterung zur Erfassung und Verwaltung von XPlanGML-Dokumenten.

SAGis XPlanung ist eine QGIS-Erweiterung zur standardkonformen Erfassung, Bearbeitung, Validierung und Verwaltung von Bauleitplänen (Bebauungsplan, Flächennutzungsplan, Landschaftsplan, Raumordnungsplan) nach dem deutschen Standard XPlanung (XPlanGML) mit PlanZV-konformer Darstellung.

# Überblick

# SAGis XPlanung

**QGIS-Erweiterung zur Erfassung und Verwaltung von XPlanGML-Dokumenten**

SAGis XPlanung unterstützt die standardkonforme Erstellung, Bearbeitung, Validierung und Verwaltung von Flächennutzungs-, Bebauungs-, Landschafts- und Raumordnungsplänen direkt in QGIS.

[Jetzt starten](<https://nti-de.github.io/SAGisXPlanung/setup/index.html>)

## Warum SAGis XPlanung?

- **XPlanung-konforme Datenerfassung**

  ---

  Erstellen und verwalten Sie Planwerke standardkonform innerhalb Ihrer bestehenden QGIS-Umgebung.
- **Import &amp; Export von XPlanGML**

  ---

  Nahtloser Austausch bestehender Datensätze über standardisierte Schnittstellen.
- **Validierung &amp; Geometrieprüfung**

  ---

  Sicherstellung von Datenqualität und Standardkonformität während der Bearbeitung.
- **PlanZV-konforme Visualisierung**

  ---

  Intuitive Darstellung von Planinhalten gemäß geltender Standards.

---

## Erste Schritte

- **Installation**

  ---

  Schritt-für-Schritt Anleitung zur Installation und Einrichtung.
- **Ersten XPlan erfassen**

  ---

  Erstellen Sie Ihren ersten standardkonformen Plan in wenigen Schritten.
- **XPlanGML importieren**

  ---

  Übernehmen Sie bestehende Planwerke direkt in SAGis XPlanung.

---

## Erweiterte Funktionen

- [**Planinhalte hinzufügen**](<https://nti-de.github.io/SAGisXPlanung/add-plancontent.html>)

  ---

  Vollständige Erfassung raumbezogener Festsetzungen.
- [**Geometrieprüfung**](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#geometrieprufung>)

  ---

  Automatische Validierung geometrischer Anforderungen.
- [**XPlanGML Export**](<https://nti-de.github.io/SAGisXPlanung/plan-export.html>)

  ---

  Standardisierte Ausgabe Ihrer Planwerke.
- [**Planinhalte bearbeiten**](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#bearbeiten-von-sachdaten>)

  ---

  Flexible Bearbeitung bestehender Datensätze.

---

## Versionen im Überblick

| Funktion | Community-Version | Vollversion |
| --- | --- | --- |
| Teilvektorielle Erfassung | ✔ | ✔ |
| Import von XPlanGML | ✔ | ✔ |
| Visualisierung gemäß PlanZV | ✔ | ✔ |
| Export von XPlanGML | Eingeschränkt | ✔ |
| Bearbeitung von Attributen | Eingeschränkt | ✔ |
| Vollvektorielle Erfassung |  | ✔ |
| Benutzerdefinierte Symbolisierung |  | ✔ |
| Tabellen-Import (Excel) |  | ✔ |

Die Community-Version ist kostenlos über das QGIS Plugin Repository verfügbar.

# Installation und Einrichtung

# Einrichtung einer Datenquelle

> [!TIP]
>
> **Neu in Version 2.0.1**

1. Einstellungen aufrufen: **SAGis | SAGis XPlanung | Einstellungen**
2. Seite **Datenbank** aufrufen
3. Option **Neue Datenbank anlegen** wählen
4. Verbindungsinformation eintragen:

   <table>         <tr>             <th>Name</th>             <td>                 Beliebiger Name der zu erstellenden Datenbank                 <div class="admonition warning">                     <p class="admonition-title">Benennung der Datenbank</p>                     <p>                          PostgreSQL erlaubt Namen, die mit kleinem Buchstaben (a-z) oder einem Unterstrich (_)                         beginnen. Die nachfolgenden Zeichen dürfen Buchstaben, Ziffern (0-9) oder Unterstriche                          enthalten.                     </p>                 </div>             </td>         </tr>         <tr>             <th>Host</th>             <td>Host-Adresse des PostgreSQL Server</td>         </tr>         <tr>             <th>Port</th>             <td>Der TCP Port des PostgreSQL Server</td>         </tr>         <tr>             <th>Nutzername</th>             <td>Name eines PostgreSQL Nutzers mit Berechtigung zum Erstellen neuer Datenbanken und Tabellen</td>         </tr>         <tr>             <th>Passwort</th>             <td>                 Passwort zur Authentifizierung im Zusammenhang mit dem gewählten Nutzernamen                 <div class="admonition warning">                     <p class="admonition-title">Passwort der Datenbank</p>                     <p>                          Das hier anzugebende Passwort ist kein neu zu wählendes Passwort, sondern das Passwort,                          welches bei Installation der Datenbank gewählt wurde (Admin-Passwort) oder ein Ihrem User                          zugewiesenes Passwort.                     </p>                 </div>             </td>         </tr>     </table>
5. Mit Button **Erstellen** die neue Datenbank erstellen
6. Nach erfolgreichem Erstellen der Datenbank mit Button **Konfiguration anwenden** die neue Datenbank als aktuelle Datenquelle festlegen

#### Neue XPlan Datenbank anlegen

> [!NOTE]
>
> **Info**
>
> Falls bereits eine XPlan-Datenbank besteht, kann dieser Schritt übersprungen werden

1. Im PostgreSQL eine neue Datenbank anlegen, beispielsweise mit pgAdmin
2. SQL-Skript (**create\_\<version\>.sql**) zum Erzeugen des XPlan-Schemas in der Datenbank ausführen

#### Neue PostgreSQL Verbindung anlegen

1. Im QGIS Bedienfeld **Browser** das Kontextmenü auf dem Menüpunkt **PostgreSQL** öffnen (rechte Maustaste)
2. **Neue Verbindung** aufrufen
3. Verbindungsinformationen der im Schritt zuvor angelegten Datenbank eintragen:

#### Neue Datenquelle anlegen (SAGis XPlanung)

1. Einstellungen aufrufen: **SAGis | SAGis XPlanung | Einstellungen**
2. Seite **Datenbank** aufrufen
3. Option **Verbindung** wählen
4. In der Auswahlliste PostGIS Verbindung die neu angelegte Verbindung wählen
5. Die Felder Nutzername und Passwort füllen, falls diese Information nicht in den QGIS-Optionen gesetzt wurde

# Installation und Einrichtung

Die Einrichtung von SAGis XPlanung setzt folgende Installationen voraus:

- **QGIS** (\> 3.34, mind. Python-Version 3.12)
- **PostgreSQL** (\> 12) mit Erweiterung **PostGIS** (\> 3.4)

Zusätzlich wird eine Internetverbindung für das Laden einiger Komponenten der Anwendung bei der Installation benötigt.

Zur Installation der Anwendung stehen die in den folgenden beiden Abschnitten beschriebenen Vorgehensweise zur Verfügung. Die Nutzung des Installationsprogramm steht erstmals seit der Version 1.5.0 zur Verfügung. Für die Installation ab Version 2.0 ist die Installation über den QGIS Plugin Manager mithilfe der Plugin-ZIP Datei empfohlen.

- Community-Edition: [Installation aus QGIS Plugin Repository](<https://nti-de.github.io/SAGisXPlanung/setup/install.html#installation-aus-qgis-plugin-repository>)
- Vollversion: [Installation über Plugin-Datei](<https://nti-de.github.io/SAGisXPlanung/setup/install.html#installation-uber-plugin-datei>)

Zusätzlich zum QGIS-Plugin benötigt SAGis XPlanung eine PostgreSQL Datenbank.

- [Einrichtung einer Datenbank](<https://nti-de.github.io/SAGisXPlanung/setup/database-setup.html>)

# Installation des QGIS Plugins

## Installation aus QGIS Plugin Repository

Community-Version

1. Erweiterungsmanager aufrufen: **Erweiterungen | Erweiterungen verwalten und installieren…**
2. Option **Alle** in der Seitenleiste wählen
3. Im Suchfeld nach **SAGis** suchen und den Eintrag **SAGis XPlanung** wählen
4. **Erweiterung installieren**

## Installation über Plugin-Datei

Vollversion

1. Erweiterungsmanager aufrufen: **Erweiterungen | Erweiterungen verwalten und installieren…**
2. Option **Aus ZIP installieren** in der Seitenleiste wählen
3. Dateipfad zum Archiv der Anwendung auswählen (SAGis.XPlanung\_\<version\>.zip)
4. **Erweiterung installieren**

# Update einer bestehenden Installation

> [!WARNING]
>
> **Wichtiger Hinweis für Kunden der Vollversion**
>
> Updates der Vollversion dürfen **nicht** über das offizielle QGIS Plugin Repository installiert werden, da dabei die bestehende Lizenz durch die Community-Version überschrieben wird. Die Installation/Update erfolgt ausschließlich über eine von NTI bereitgestellte Plugin-Datei. Sollten Sie dennoch versehentlich ein Update ausgeführt haben, [kontaktieren](<https://nti-de.github.io/SAGisXPlanung/general/support.html>) Sie uns.

> [!WARNING]
>
> **Backup empfohlen**
>
> Vor der Durchführung eines Updates empfehlen wir ausdrücklich die Erstellung eines vollständigen Backups der XPlan-Datenbank.

---

## Plugin-Update installieren

Vollversion

Nach Bereitstellung eines Updates erhalten Sie eine E-Mail mit einem Downloadlink zur aktuellen Plugin-Version als ZIP-Datei.

### Installation des Updates

1. ZIP-Datei des Plugins über den Freigabelink herunterladen
2. QGIS öffnen
3. Erweiterungsmanager öffnen:

   ```
   Erweiterungen → Erweiterungen verwalten und installieren
   ```
4. Zum Tab **„Aus ZIP installieren“** wechseln
5. Heruntergeladene ZIP-Datei auswählen
6. Installation starten

Ein vorheriges Entfernen der bestehenden Plugin-Version ist nicht erforderlich. Alle Einstellungen, Konfigurationen und Daten bleiben erhalten.

> [!NOTE]
>
> **Info**
>
> Während der Installation können [zusätzliche Software-Bibliotheken](<https://nti-de.github.io/SAGisXPlanung/general/FAQ.html#python-pakete>) aktualisiert werden. Entsprechende Dialoge bitte mit **„Ja“** bestätigen.

Nach Abschluss der Installation muss QGIS einmal neu gestartet werden, damit das Update vollständig angewendet wird.

---

## Aktualisierung der Datenbankstrukturen

Bei Updates zwischen zwei verschiedenen Haupt- oder Nebenversionen ist zusätzlich eine Aktualisierung der Datenbankstrukturen erforderlich.

Beispiel:

- Update von `2.12.x` → `2.13.x` → **Datenbank-Upgrade erforderlich**
- Update von `1.10.x` → `2.0.x` → **Datenbank-Upgrade erforderlich**
- Update von `2.13.1` → `2.13.2` → **kein Datenbank-Upgrade erforderlich**

Grundsätzlich gilt:

> Plugin-Versionen mit unterschiedlichen Nebenversionen können nicht auf derselben Datenbankstruktur arbeiten.

---

## Datenbank-Upgrade durchführen

Nach dem Plugin-Update und dem Neustart von QGIS kann das Datenbank-Upgrade direkt innerhalb von SAGis XPlanung durchgeführt werden.

### Vorgehensweise

1. Einstellungen von SAGis XPlanung öffnen
2. Zum Tab **„Datenbank“** wechseln
3. Button **„Upgrade“** auswählen

Das Upgrade führt die erforderlichen SQL-Skripte automatisch im Hintergrund aus.

> [!WARNING]
>
> Der konfigurierte Datenbankbenutzer benötigt Berechtigungen zum Erstellen und Ändern von Tabellen und Datenbankstrukturen.
>
> Neu angelegte Datenbankobjekte (z. B. Tabellen oder Sequenzen) werden standardmäßig dem ausführenden PostgreSQL-Benutzer als Owner zugewiesen. Dies sollte insbesondere bei Datenbankumgebungen mit rollenbasierten Berechtigungs- und Ownership-Konzepten berücksichtigt werden.

**Alternativ: Upgrade über DB-Administration**

Falls kein geeigneter Datenbankbenutzer innerhalb von QGIS verfügbar ist, kann das Upgrade alternativ auch direkt durch einen Datenbankadministrator durchgeführt werden. Hierfür stellen wir auf Anfrage das benötigte SQL-Upgrade-Skript separat zur Verfügung. Die Ausführung kann anschließend über PostgreSQL-Administrationswerkzeuge, wie pgAdmin, DBeaver, ... erfolgen.

---

## Community-Version

Nutzer der Community-Version erhalten Updates weiterhin direkt über das QGIS Plugin Repository.

# Anwendungsfälle

# Neuen Plan erfassen

Voraussetzung für die Erfassung eines neuen Planwerks ist ein Vektorlayer vom Geometrietyp (Multi)Polygon, der den Geltungsbereich des zu erfassenden Plans beschreibt. Sollte der Plan nur teilvektoriell erfasst werden, wird zusätzlich ein georeferenziertes Rasterbild der Planzeichnung benötigt.

1. Im Hauptdialog der Anwendung im Abschnitt **Neuen Plan erfassen** die entsprechende Art des zu erfassenden Plans auswählen
2. Mit dem Button **Planwerk erfassen** öffnet sich ein Sachdatendialog zur Konfiguration der Sachdaten für den zu erstellenden Plan
3. Im Formular alle benötigten Attribute mit Daten füllen. Dabei sind die folgenden Angaben als Pflichtattribute zwingend auszufüllen:

<table>       <tr>           <th>planArt</th>           <td>Art des Planwerks</td>       </tr>       <tr>          <th>Gemeinde</th>          <td><tooltip term="datenobjekt">Datenobjekt</tooltip> vom Typ <code>XP_Gemeinde</code>. Entweder bestehendes Objekt im Dropdown wählen oder              über das Plus-Symbol ein neues Objekt anlegen.             Benötigte Daten: <ul>             <li> Gemeindeschlüssel (12-stellig) oder Regionalschlüssel</li>             <li> Name der Gemeinde </li>             </ul>          </td>       </tr>       <tr>          <th>name</th>          <td>Beliebiger Bezeichner für den Plan</td>       </tr>       <tr>          <th>Geltungsbereich</th>          <td>Auswahlmöglichkeit für die Vektorgeometrie des Geltungsbereich. Nach Auswahl des Layers bestehen zwei Optionen:             <ul>                <li><b>Kartenabfrage:</b> Über die Schaltfläche mit dem Cursor-Symbol aktiviert sich ein QGIS-Kartenwerkzeug, mit dem der Geltungsbereich auf der Karte gewählt werden kann (Linke Maustaste zum Auswählen eines Features auf der Karte; rechte Maustaste zum Deaktivieren des Werkzeugs)</li>                <li><b>Auswahl über ID:</b> Anstatt der Nutzung des Werkzeugs, kann auch direkt in der unteren Auswahlliste das Feature gewählt werden, wenn die Nummer des Features bekannt ist.</li>             </ul>          </td>       </tr>    </table>

> [!NOTE]
>
> **Geometrie des Geltungsbereich**
>
> Die Geometrie des Geltungsbereichs muss zwingend vom Typ (Multi-) Polygon sein. Es wird keine Umring-Geometrie (Linie) akzeptiert.

Weitere Schritte:

- [Bearbeiten von Sachdaten](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#bearbeiten-von-sachdaten>)
- [Vektorielle Planinhalte hinzufügen](<https://nti-de.github.io/SAGisXPlanung/add-plancontent.html#planinhalte-mit-raumbezug-hinzufugen>)

# Kartenanzeige

SAGis XPlanung enthält eine Sammlung an Standard-Darstellungsvorschriften zur Visualisierung von Planwerken nach den Vorlagen der Planzeichenverordnung. Eine Anpassung der individuellen Stile ist in den [Einstellungen](<https://nti-de.github.io/SAGisXPlanung/settings/symbology.html>) möglich.

> [!TIP]
>
> Die Darstellungskonfiguration aus den [Einstellungen](<https://nti-de.github.io/SAGisXPlanung/settings/symbology.html>) wird auf alle Planwerke bei der Kartenanzeige angewendet. Für die Anpassung der Darstellung einzelner Planwerke, können die üblichen QGIS-Darstellungseigenschaften projektbasiert verwendet werden.

## Präsentationsobjekte

Zur Erweiterung der Darstellungsinformationen realisiert der Standard XPlanung das Konzept der Präsentationsobjekte. Diese unterstützen oder ändern die Standard-Darstellung von Planinhalten, haben jedoch selbst keine fachliche Bedeutung. Präsentationsobjekte können graphische Annotationen, wie textliche Beschriftungen oder zusätzliche Symbole repräsentieren.

### Allgemein

In XPlanung werden Präsentationsobjekte für die grafische Darstellung im Plan verwendet, ohne selbst inhaltliche Planwerte zu repräsentieren. Man unterscheidet freie und gebundene Präsentationsobjekte.

- Freie Präsentationsobjekte haben keinen Bezug zu einem Fachobjekt (z.B. ein bloßer Annotations-Text) und dienen nur der grafischen Beschriftung
- Gebundene Präsentationsobjekte sind über die Relation `<xplan:dientZurDarstellungVon>` mit genau einem Fachobjekt verknüpft und zeigen Attributwerte dieses Fachobjekts im Plan an

Bei gebundenen Präsentationsobjekten bestimmt das Attribut `<xplan:art>` den angezeigten Inhalt. In diesem Feld wird ein XPath-Ausdruck eingetragen, der auf ein oder mehrere Attribute des zugehörigen Fachobjekts referenziert. Der Ausdruck ist relativ zum Fachobjekt und verwendet in der Regel den Namensraum-Präfix `<xplan:>` vor jedem Elementnamen. Praktisch wird also durch die Angabe `<xplan:art>xplan:text</xplan:art>` angegeben, den Inhalt des Attributs *text* zu visualisieren.

**Beispiel 1**: Darstellung von Einzelattributen

```
BP_Plan
├── BP_BaugebietsTeilFlaeche
│   ├── allgArtDerBaulNutzung: WohnBauflaeche
│   ├── besondereArtDerBaulNutzung: ReinesWohngebiet
│   └── XP_PPO
│       ├── art: xplan:allgArtDerBaulNutzung
│       └── art: xplan:besondereArtDerBaulNutzung
└── BP_GruenFlaeche
    ├── zweckbestimmung: Kleingarten
    └── XP_PPO
        └── art: xplan:zweckbestimmung
```

**Bedeutung**: Darstellung zweier punktförmiger Präsentationsobjekte:

- Visualisierung der Inhalte aus Attributen *allgArtDerBaulNutzung* und *besondereArtDerBaulNutzung* auf einem Objekt `BP_BaugebietsTeilFlaeche`

- Visualisierung der Inhalte aus Attribut *zweckbestimmung* auf einem Objekt `BP_GruenFlaeche`

**Beispiel 2**: Darstellung von Attributen mit Mehrfachauswahl

```
FP_Plan
└── FP_Gemeinbedarf
    ├── zweckbestimmung: Sport, Schule
    ├── XP_PPO
    │   └── art: xplan:zweckbestimmung[1]
    └── XP_PPO
        └── art: xplan:zweckbestimmung[2]
```

**Bedeutung**: Darstellung von zwei punktförmigen Präsentationsobjekten auf einem einzelnen Fachobjekt aus der Mehrfachauswahl im Attribut *zweckbestimmung*

> [!WARNING]
>
> **Index bei Mehrfachauswahl**
>
> Der Index im XPath-Ausdruck gibt an, welcher Wert bei Attributen mit Mehrfachauswahl visualisiert werden soll. In Version 5.x muss der Index auch im Attribut *index* eingetragen werden. Hier muss weiterhin eine 0-basierte Zählweise verwendet werden, sodass der Index 0 auf den ersten Wert verweist, der Index 1 auf den zweiten Wert, usw.

### Neues Präsentationsobjekt anlegen

1. Das Werkzeug **Planinhalte konfigurieren / abfragen** aus der XPlanung-Werkzeugleiste wählen. <kbd class="key-alt">Alt</kbd>\+<kbd class="key-q">Q</kbd>
2. Auf das XPlan-Objekt in der Karte klicken, zu dem das Präsentationsobjekt hinzugefügt werden soll
3. Im Kontextmenü das entsprechende Objekt finden und die Option *Präsentationsobjekt hinzufügen* wählen
4. Im Dialog die Art des Präsentationsobjekts auswählen, die Position/Platzierung definieren und den Inhalt des neuen Präsentationsobjekts konfigurieren

<table>  <br> <tr>       <th>Art des Präsentationsobjekts</th>       <td>          <ul>             <li>                <i>Symbol</i>: <code>XP_PPO</code>, Objektklasse für punktförmige Symbole             </li>             <li>                <i>Text</i>: <code>XP_PTO</code>, Objektklasse für Schriftinhalte             </li>             <li>                <i>Nutzungsschablone</i>: <code>XP_Nutzungsschablone</code>, Objektklasse für Baunutzungsschablonen.                 (Objektklasse kann nur als Präsentationsobjekt für die Darstellung eines Objekts vom Typ                 <code>BP_BaugebietsTeilFlaeche</code> verwendet werden)             </li>          </ul>       </td>    </tr>   <br> <tr>       <th>Position</th>       <td>          Das Präsentationsobjekt wird standardmäßig an der Position des Mauscursors bei Aufruf des Dialogs platziert.          Alternativ kann die Position verändert werden:          <ul>             <li>                <i>Auf Mittelpunkt setzen</i>: Position wird auf den Mittelpunkt des Objekts festgelegt. Die Platzierung erfolgt dabei immer innerhalb der Grenzen des Objekts.             </li>             <li>                <i>Auf Karte wählen</i>: Nach Auswahl des Werkzeugs kann auf der Karte eine neue Position festgelegt werden             </li>          </ul>       </td>    </tr>   <br> <tr>       <th>Inhalt/Darstellung</th>       <td>          Der Inhalt des Präsentationsobjekts wird über die Konfiguration eines XPath-Ausdrucks definiert. Damit das           Präsentationsobjekt auf der Karte dargestellt werden kann muss mindestens ein XPath hinterlegt sein.       </td>    </tr> </table>

### Nutzungsschablone

Ein typisches Präsentationsobjekt ist die Nutzungsschablone. Die Tabellenform der Nutzungsschablone gibt einen einfachen Überblick auf die wichtigsten Festsetzungen einer Baufläche. Die Nutzungsschablone kann für alle Bauflächen innerhalb eines Bebauungsplans angelegt werden (Objektklasse `BP_BaugebietsTeilFlaeche`). Die angezeigten Daten der Tabelle werden aus den Sachdaten des referenzierten XPlan-Fachobjekts verwendet.

#### Nutzungsschablone anlegen

- Siehe [Neues Präsentationsobjekt anlegen](<#neues-prasentationsobjekt-anlegen>): Art des Präsentationsobjekt als *Nutzungsschablone* festlegen.

#### Nutzungsschablone anpassen

- Über den [Objektbaum](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#der-objektbaum>) die Attribut-Ansicht eines Objekts vom Typ `XP_Nutzungsschablone` aufrufen.

Im Sachdatendialog besteht die Möglichkeit die Form und Inhalte der Nutzungsschablone anzupassen:

<table markdown="span">         <tr>             <th>Form</th>             <td>Anpassen der Tabellenform. Auswahl aus den drei vorgegebenen Formen.</td>         </tr>         <tr>             <th>Zellwerte</th>             <td>Bestimmt die Inhalte der Nutzungsschablone. Jede Auswahlliste bestimmt den Inhalt einer Zelle in der                 Tabelle. Es kann aus den folgenden Optionen gewählt werden:                 <ul>                     <li><b>Art d. baulichen Nutzung</b> (Punkt 1 PlanZV)</li>                     <li><b>Anzahl der Vollgeschosse</b> (Punkt 2.7 PlanZV)</li>                     <li><b>Grundflächenzahl</b> (Punkt 2.5 PlanZV)</li>                     <li><b>Geschossflächenzahl</b> (Punkt 2.1 PlanZV)</li>                     <li><b>Art der Bebauung</b> (Punkt 3.1.1-3.1.4 PlanZV)</li>                     <li><b>Bauweise</b> (Punkt 3.1-3.3 PlanZV)</li>                     <li><b>Dachneigung</b>: Angabe aus zugeordnetem Objekt vom Typ <code>BP_Dachgestaltung</code></li>                     <li><b>Dachform</b>: Angabe aus zugeordnetem Objekt vom Typ <code>BP_Dachgestaltung</code></li>                     <li><b>Höhe baulicher Anlagen</b> (Punkt 2.8 PlanZV): Angabe aus zugeordnetem Objekt vom Typ <code>XP_Hoehenangabe</code></li>                     <li><b>Baumasse / Baumassenzahl</b> (Punkt 2.3-2.4 PlanZV)</li>                     <li><b>Grundfläche / Geschossfläche</b> (Punkt 2.2+2.6 PlanZV)</li>                 </ul>             </td>         </tr>     </table>

# Konfiguration von Planinhalten

Nach dem [Erfassen eines Planwerks](<https://nti-de.github.io/SAGisXPlanung/new-plan.html>), können sowohl vektorielle Planinhalte zugeordnet werden als auch Planinhalte, die keine Geometrien enthalten – die sogenannten Datenobjekte.

## Planinhalte mit Raumbezug hinzufügen

Vollversion

Voraussetzung zum Hinzufügen vektorieller Planinhalte ist, dass ein Layer mit Objekten im QGIS geladen ist, der Geometrien für die neuen Planinhalte enthält. Dies kann ein Layer aus beliebiger Datenquelle oder auch ein Temporärlayer sein.

> [!NOTE]
>
> **Info**
>
> Um vektorielle Planinhalte einem Planwerk zuordnen zu können, muss bei der [Erfassung eines Planwerks](<https://nti-de.github.io/SAGisXPlanung/new-plan.html>) mindestens ein Bereich angelegt werden. Ein Bereich dient zur logischen Gruppierung von Planinhalten. Bereiche nachträglich hinzufügen, ist über die Funktion [Datenobjekte hinzufügen](<#datenobjekte>) möglich.

1. Das Werkzeug **Planinhalte konfigurieren / abfragen** aus der XPlanung-Werkzeugleiste wählen. <kbd class="key-alt">Alt</kbd>\+<kbd class="key-q">Q</kbd>
2. Mit der rechten Maustaste ein Objekt auf der Karte wählen, das als neuer Planinhalt konfigurieren werden soll. Im Kontextmenü die Option **Als Planinhalt konfigurieren** wählen.
3. Im folgenden Dialog findet die Zuordnung der gewählten Geometrien zu einem Planwerk statt. Dabei wird eine Objektart aus dem XPlanung-Objektkatalog zugewiesen. Es bestehen folgende Optionen zum Konfigurieren eines neuen Planinhalts:

   <table>     <tr>         <th>Zuordnung zu einem Plan</th>         <td>Auswahl eines Planwerks aus der Datenbank, zu dem die neu konfigurierten Planinhalte zugeordnet werden              sollen.          </td>     </tr>     <tr>         <th>Gewählte Geometrien</th>         <td>Diese Sektion erlaubt es, weitere Geometrien auf der Karte anzuwählen, die ebenfalls als gleiche             Objektart mit gleichen Sachdaten erfasst werden soll. Die Auswahl der Geometrien kann über die             folgenden Optionen stattfinden:            <ul>               <li>Auswahl von Einzelobjekten durch Klick in die Karte</li>               <li>Checkbox <b>Alle Auswählen</b>: Alle Objekte des gewählten Layers werden zur Auswahl hinzugefügt</li>               <li><b>QGIS Abfrageeditor</b>: Auswählen von Objekten nach bestimmten Filter-Abfragen über QGIS-Ausdrücke</li>            </ul>         </td>     </tr>     <tr>         <th>XPlanung-Objektart wählen</th>         <td>Auswahl einer Objektart aus dem XPlanung-Schema, die den gewählten Geometrien zugeordnet werden.             Die verfügbaren Objekte sind abgestimmt auf den Geometrietyp (Punkt, Linie, Polygon) des gewählten             Layers und die Art des bei Sektion <b>Zuordnung zu einem Plan</b> gewählten Planwerks.  <br><br>             Mit dem Auswahlmenü neben dem Suchfeld, kann die Liste der Objektklassen mit weiteren Objekten aus             anderen XPlan-Fachbereichen erweitert werden.         </td>     </tr> </table>

   > **Info**
   >
   > Die Option **Alle Auswählen** funktioniert nur bei Layern mit weniger als 1000 Objekten. Für größere Layer muss zunächst ein Ausschnitt erstellt werden (Objekte mit QGIS Werkzeugen wählen, dann mit Funktion **gewählte Objekte exportieren** neu speichern)

   > **Geometrievalidierung**
   >
   > Bei der Auswahl von Geometrien findet eine Prüfung auf Gültigkeit und Lage innerhalb des gewählten Bereichs statt. Sobald eine Geometrie mit einer Warnung versehen ist, wird diese bei einer Geometrieprüfung einen Fehler hervorrufen. Siehe [Geometrieprüfung](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#geometrieprufung>) für Anforderungen an geometrische Korrektheit.
4. Mit dem Button **Weiter** in das Sachdaten-Formular der gewählten Objektart wechseln
5. Nach Eingabe der Sachdaten für die neu zu erstellenden Objekte, mit dem Button **Speichern** den Dialog bestätigen

Nach Bestätigen des Dialogs werden die neuen Objekte in der Datenbank angelegt und mit dem gewählten Plan verknüpft. Neue Objekte erscheinen im Anschluss im Objektbaum.

## Datenobjekte hinzufügen

Datenobjekte sind Objektarten, die zusätzliche Sachdaten enthalten. Sie besitzen grundsätzlich keinen Raumbezug (Geometrie).

> [!WARNING]
>
> Ausnahme: Bereiche hinzufügen! Bereiche sind keine Datenobjekte, werden aber über die gleiche Funktion erstellt.

1. Planwerk wählen und **Planwerk Details** aufrufen
2. Im Objektbaum mit der rechten Maustaste das Kontextmenü eines Objekts öffnen und im Kontextmenü die Option **Neues Datenobjekt hinzufügen** wählen:
3. Im folgenden Dialog können die Sachdaten für eine gewählte Objektart eingetragen werden
4. Mit dem Button **Speichern** das Erfassen eines neuen Datenobjekt bestätigen

# Plan in eine Zusammenzeichnung integrieren

Mit der Funktion **Plan in Zusammenzeichnung integrieren** können die Inhalte eines Planwerks (Quellplan) in ein anderes Planwerk (Zielplan) übernommen werden. Der Quellplan bleibt dabei unverändert erhalten; seine Bereiche und alle darin enthaltenen Planinhalte werden vollständig in den Zielplan kopiert.

> [!NOTE]
>
> **Was ist eine Zusammenzeichnung?**
>
> Im Kontext des Standards XPlanung bezeichnet eine **Zusammenzeichnung** die Zusammenführung der Urschrift eines Plans mit allen seinen bisherigen Änderungen und Berichtigungen zu einem einzigen, aktuellen Planwerk. Der Vorteil einer Zusammenzeichnung ist, dass alle aktuell gültigen Inhalte eines Plans in einem einzigen Datensatz abgebildet werden. Dies betrifft in der Praxis insbesondere Flächennutzungspläne, bei denen Änderungen über lange Zeiträume hinweg anfallen. Aus einer Zusammenzeichnung kann anschließend eine neue Fassung erzeugt werden, die durch einen anschließenden Beschluss der Kommune zur Neuaufstellung des FNP dient. Nachteil einer Erfassung in Form einer Zusammenzeichnung ist, dass die Historie der Änderungen verloren geht und die ehemalige Planungsabsicht der Kommune in XPlanung nicht mehr nachvollzogen werden kann.
>
> **Weitere Informationen**
>
> - BY: [Leitfaden Digitale Bauleitpläne](<https://www.digitale.planung.bayern.de/medien/dokumente/leitfaden_xplanung.pdf#page=52>), Kap. 6.2 "Erfassung überplanter Bereiche in Bestandsplänen" u. Kap. I.5.1 "Zusammenzeichnung"

## Funktionsweise

Die Funktion dient dazu, ein vollständiges Planwerk in ein anderes, bereits vorhandenes Planwerk zu integrieren. Dabei führt SAGis XPlanung automatisch die folgenden Schritte aus:

1. **Übernahme der Planinhalte:** Alle Bereiche des Quellplans werden zusammen mit allen enthaltenen Planinhalten in den Zielplan kopiert. Die Objekte erhalten neue Identifikationen und der Quellplan bleibt unverändert bestehen.
2. **Anpassung überlappender Inhalte:** Überlagern sich die Geltungsbereiche beider Pläne, werden die im Überlappungsbereich liegenden Planinhalte des Zielplans entsprechend zurückgeschnitten, sodass der [Flächenschluss](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#geometrieprufung>) erhalten bleibt.
3. **Erweiterung des Geltungsbereichs:** Reicht der Quellplan über den Geltungsbereich des Zielplans hinaus, wird der Geltungsbereich des Zielplans automatisch auf die vereinigte Fläche erweitert.

## Dialog aufrufen

#### Zusammenzeichnungs-Dialog öffnen

1. Gewünschtes Planwerk (Quellplan) in der [Detailansicht Planwerk](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html>) öffnen
2. Im oberen Abschnitt des Fensters das Menü mit den drei Punkten (**⋮**) anklicken
3. Die Aktion **Plan in Zusammenzeichnung integrieren** wählen

## Vorgehensweise zum Integrieren eines Plans

Der Dialog führt in drei Schritten durch die Zusammenzeichnung. Über die Schaltflächen **Abbrechen** und **Zurück** kann der Vorgang jederzeit abgebrochen bzw. ein Schritt zurückgegangen werden.

### Schritt 1: Zielplan auswählen

Im linken Bereich werden Informationen zum **Quellplan** angezeigt

Im rechten Bereich **Zielplan auswählen** wird die Zusammenzeichnung gewählt, in die der aktuelle Plan eingefügt werden soll. Die Liste aller Planwerke der Datenbank lässt sich über das Suchfeld nach Name filtern. Jeder Eintrag zeigt den Plannamen, die zugehörige Gemeinde sowie optional Rechtsstand und Anzahl der Planinhalte.

1. Zielplan suchen und in der Liste wählen
2. Mit **Weiter zur Vorschau** zum nächsten Schritt wechseln

> [!NOTE]
>
> **Voraussetzungen für die erfolgreiche Zusammenzeichnung**
>
> - Beide Pläne sollten über einen **gültigen Flächenschluss** verfügen, bevor der Plan integriert wird.

### Schritt 2: Vorschau und Prüfung

Im Vorschauschritt werden Quell- und Zielplan gegenüberstellend dargestellt:

- **Original:** Kartenvorschau des Quellplans vor der Integration
- **Zusammenzeichnung:** Vorschau des Zielplans nach der Integration des Quellplans

Über die Checkbox **Quellplan einblenden** kann der Quellplan auf der Karte des Zielplans ein- und ausgeblendet werden. Mit den Zoom-Schaltflächen lässt sich die Kartenvorschau auf die Ausdehnung des jeweiligen Plans einstellen. Die beiden Kartenvorschau-Ausschnitte sind miteinander synchronisiert.

Bevor die Zusammenzeichnung ausgeführt wird, werden hier automatisch [Fehler und Warnhinweise](<#fehler-und-warnhinweise>) angezeigt, die auf problematische Konstellationen hinweisen.

1. Vorschau prüfen und Warnhinweise beachten
2. Mit **Ausführen** die Zusammenzeichnung starten

> [!WARNING]
>
> Treten Warnhinweise auf, die eine Durchführung verhindern (z. B. unterschiedliche Planarten), ist die Schaltfläche **Ausführen** deaktiviert. Wählen Sie in diesem Fall einen passenden Zielplan.

### Schritt 3: Ausführen und Ergebnis

Je nach Umfang der Planinhalte kann die Ausführung des Vorgangs einige Augenblicke dauern. Nach Abschluss der Zusammenzeichnung wird das Ergebnis angezeigt:

- **Zusammenzeichnung abgeschlossen:** Der Quellplan wurde erfolgreich in den Zielplan übernommen. Mit **Fertig** wird der Dialog geschlossen, mit **Zurücksetzen** kann der Dialog von neuem gestartet werden.
- **Fehler beim Erstellen der Zusammenzeichnung:** Die Integration ist fehlgeschlagen. Der Zielplan bleibt in diesem Fall unverändert.

> [!TIP]
>
> Die Zusammenzeichnung wird in der Historie der [Detailansicht Planwerk](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html>) registriert und kann über die Schaltflächen **Rückgängig** und **Vorwärts** rückgängig gemacht bzw. erneut ausgeführt werden.

## Mögliche Fehler und Warnhinweise

Beim Integrieren eines Plans in eine Zusammenzeichnung können verschiedene Fehler und Warnungen auftreten. Die folgenden Konstellationen sollten vor dem Ausführen besonders beachtet werden:

> [!WARNING]
>
> **Unterschiedliche Planarten**
>
> Quellplan und Zielplan müssen derselben Planart angehören (z. B. beide `BP_Plan`). Sind Quell- und Zielplan unterschiedliche Planarten, wird die Zusammenzeichnung **nicht unterstützt** und kann nicht ausgeführt werden. Wählen Sie in diesem Fall einen Zielplan der gleichen Planart.

> [!WARNING]
>
> **Keine räumliche Überschneidung**
>
> Überschneiden sich die Geltungsbereiche von Quell- und Zielplan nicht, wird eine Warnung angezeigt. Die Zusammenzeichnung kann zwar ausgeführt werden, die fehlende räumliche Beziehung kann jedoch zu unerwünschten Ergebnissen führen. Prüfen Sie vor der Ausführung, ob der gewählte Zielplan korrekt ist.

# XPlanGML Export

SAGis XPlanung ermöglicht den Export aller erfassten Planwerke in das Austauschformat XPlanGML. Die Anwendung erzeugt dabei XPlanGML-Dateien in der Version 5.3 oder 6.0 (Anpassung der Version in den [Einstellungen](<https://nti-de.github.io/SAGisXPlanung/settings/general.html#exportoptionen>) möglich).

1. Planwerk im Dropdown-Menü im untersten Abschnitt des Hauptdialogs auswählen
2. Ausgabeformat über die Auswahl der zwei Optionsfelder festlegen:

   |  |  |
   | --- | --- |
   | XPlanGML | Beim Export mit der Option XPlanGML wird ausschließlich die XPlanGML-Datei ausgegeben |
   | ZIP-Archiv | Bei der Auswahl der Option ZIP-Archiv wird ein komprimierter Ordner samt XPlanGML und allen verknüpften Referenzen ausgegeben |
3. Mit dem Button **Export** startet der Export

> [!NOTE]
>
> **Info**
>
> Abhängig von der Größe des Planwerks kann dieser Prozess einige Zeit in Anspruch nehmen. Nach Beendigung wird der Erfolg des Exports in der Statusleiste bestätigt.

# XPlanGML Import

Neben dem [Export von Planwerken](<https://nti-de.github.io/SAGisXPlanung/plan-export.html>) erlaubt SAGis XPlanung den Import von bestehenden Planwerken im XPlanGML-Format, um ein Planwerk, das bereits XPlanung konform vorliegt, im QGIS zu visualisieren und zu bearbeiten.

> [!NOTE]
>
> **Info**
>
> Ein fehlerfreier Import funktioniert nur für unterstützte XPlanGML-Versionen. Andere Versionen des Austauschformats funktionieren möglicherweise abhängig von der Belegung der Attribute auch, jedoch können dann einzelne Informationen beim Import verloren gehen.

1. Zum Import im Abschnitt des Hauptdialogs **XPlanGML Import** die Schaltfläche mit den drei Punkten wählen.
2. Im Dialog den Speicherort der XPlanGML-Datei suchen, anschließend mit Button **Öffnen** bestätigen
3. Im letzten Schritt die ausgewählte Datei, die im Eingabefeld **Pfad** erscheint, mit einem Klick auf **Import** in die Datenbank überführen

> [!NOTE]
>
> **Info**
>
> Abhängig von der Größe des Planwerks kann dieser Prozess einige Zeit in Anspruch nehmen. Der Import-Fortschritt wird im Dialog angezeigt. Mit dem Abbruch-Icon kann der Import-Prozess vorzeitig abgebrochen werden.

# Mehrfachbearbeitung

Die Mehrfachbearbeitung ist eine Funktion zum Bearbeiten mehrerer Planinhalte eines erfassten Plans von der gleichen XPlan-Objektart.

1. [Plan auf Karte anzeigen](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#kartenanzeige>)
2. Mit den QGIS-Auswahlwerkzeugen eine beliebige Auswahl auf der Karte treffen (bspw. *über Einzelklick wählen* oder *Objekte nach Wert wählen*)
3. Das Werkzeug **Planinhalte konfigurieren / abfragen** aus der XPlanung-Werkzeugleiste wählen. <kbd class="key-alt">Alt</kbd>\+<kbd class="key-q">Q</kbd>
4. Ein beliebiges Objekt in der aktuellen Auswahl auf der Karte mit Rechtsklick wählen und im Kontextmenü die Option **Gewählte Objekte bearbeiten** aufrufen
5. In der Attributauswahl alle Attribute auswählen, die angepasst werden sollen
6. Im Abschnitt *Änderungen* die neuen Attributwerte eintragen
7. Mit Button *Änderungen speichern* werden die neuen Attributwerte den gewählten Objekten zugewiesen

> [!TIP]
>
> Alternativ kann die Mehrfachbearbeitung auch über den [Objektbaum](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#der-objektbaum>) aufgerufen werden. Nach Auswahl mehrerer Einträge gleicher Objektart im Kontextmenü die Option **Gewählte Objekte bearbeiten** aufrufen:

# Textliche Festsetzungen

XPlanung bietet die Möglichkeit, textlich formulierte Planinhalte (z. B. textliche Festsetzungen oder Begründungen) dem gesamten Planungsbereich oder zusätzlich dazu bestimmten Teilflächen des Plangebiets zuzuordnen. Zu empfehlen ist die Erfassung von textlichen Festsetzungen und deren Zuordnung zum entsprechenden geometrischen Planobjekt[^/SAGisXPlanung/text-contents.html#1].

## Textliche Festsetzung anlegen

Textliche Festsetzungen werden in XPlanung als eigenständige Objekte vom Typ `XP_TextAbschnitt` (oder davon abgeleitete Typen) erfasst. Ein Textabschnitt kann anschließend einem oder mehreren Planinhalten zugeordnet werden.

#### Neuen Textabschnitt erstellen

1. Im [Objektbaum](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#der-objektbaum>) den gewünschten Planinhalt auswählen.
2. Über das Kontextmenü **Neues Datenobjekt hinzufügen** die passende Relation auf eine TextAbschnitt-Klasse auswählen. Die Relation kann je nach zugehörigem XPlan-Objekt entweder `texte` (bei Plan und Bereich) oder `refTextInhalt` (bei Planinhalten) heißen.

Anschließend öffnet sich der Dialog zum Erstellen eines neuen Textabschnitts.

Dabei können folgende Informationen erfasst werden:

|  |  |
| --- | --- |
| schluessel | Kurzbezeichnung oder Nummerierung der textlichen Festsetzung. |
| gesetzlicheGrundlage | Rechtsgrundlage, auf die sich die Festsetzung bezieht (z. B. § 9 Abs. 1 Nr. 2 BauGB). |
| text | Wortlaut der textlichen Festsetzung. |
| refText | Optionaler Verweis auf externe Dokumente oder Textquellen. |
| Rechtscharakter | Fachliche Einordnung des Textes, z. B. Festsetzung, Hinweis oder Nachrichtliche Übernahme. |

## Vorhandene Textabschnitte verwenden

Bereits erfasste Textabschnitte können mehrfach verwendet werden. Dadurch lassen sich identische Festsetzungen verschiedenen Planinhalten zuordnen, ohne den Text erneut erfassen zu müssen.

#### Vorhandenen Textabschnitt zuordnen

1. Beim Anlegen eines Textabschnitts die Option **Vorhandene durchsuchen** auswählen.
2. Gewünschte Textabschnitte über die Suchfunktion finden und auswählen.
3. Mit der Auswahl bestätigen, um die Zuordnung zum aktuellen Planinhalt herzustellen.

> [!TIP]
>
> Textliche Festsetzungen sollten möglichst nur einmal erfasst und anschließend den allen betroffenen Planinhalten zugeordnet werden.

[^/SAGisXPlanung/text-contents.html#1]: Leitfaden XPlanung, Leitstelle XPlanung (2020), https://xleitstelle.de/downloads/XPlanung\_Leitfaden\_1.pdf

# Elemente der Oberfläche

# Hauptdialog

Der **Hauptdialog** ist der zentrale Einstiegspunkt der Anwendung. Das Fenster bietet Zugriff auf die meistgenutzten Funktionen des SAGis XPlanung und ist untergliedert in die folgenden vier Sektionen:

|  |  |
| --- | --- |
| Werkzeuge | Zugriff auf das XPlanung-Werkzeug zum [Zuweisen neuer Planinhalte](<https://nti-de.github.io/SAGisXPlanung/add-plancontent.html>) und zur Abfrage von XPlan-Daten auf der Karte |
| Neuen Plan erfassen | Funktion zum [Erstellen eines neuen XPlan](<https://nti-de.github.io/SAGisXPlanung/new-plan.html>) |
| XPlanGML Import | Funktion zum [Import bestehender XPlanGML-Dokumente](<https://nti-de.github.io/SAGisXPlanung/plan-import.html>) in die Datenbank |
| Planwerk-Auswahl | Funktion zur Auswahl eines erfassten Planwerks aus der Datenbank. Der im Dropdown-Menü gewählte Plan wird im Arbeitsbereich des [Planwerk-Detail Fenster](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html>) geladen und kann mit der Option Auswahl exportieren in ein [XPlanGML-Dokument exportiert](<https://nti-de.github.io/SAGisXPlanung/plan-export.html>) werden |

## Starten der Anwendung

Beim Aufruf der Anwendung startet das SAGis XPlanung in der Ansicht des Hauptdialogs.

1. In der **SAGis Menüleiste** auf das SAGis XPlanung-Icon klicken um die Anwendung zu starten
2. Das Hauptfenster öffnet sich standardmäßig als QGIS-Bedienfeld an der rechten Seite, kann jedoch auch per drag-and-drop an eine andere Position verschoben werden

> [!NOTE]
>
> **Info**
>
> Sollte das Icon nicht in der Werkzeugleiste zu finden sein, vergewissern Sie sich, dass die **SAGis Menüleiste** aktiviert ist (**Ansicht | Werkzeugleisten | SAGis Toolbar**).

## Planwerk-Auswahl

Über die **Planwerk-Auswahl** können Sie schnell zwischen den in der Datenbank verfügbaren Plänen wechseln. Die Pläne lassen sich dabei nach Planart filtern, durchsuchen, sortieren und als Favoriten anheften.

<table>     <tr>         <th>Plan auswählen</th>         <td>             Klicken Sie auf das Auswahlfeld am oberen Rand, um die Planauswahl zu öffnen.             In der Liste werden alle verfügbaren Pläne angezeigt. Klicken Sie auf einen Plan,             um diesen zu öffnen. Der in der Auswahlliste gewählte Plan wird im Arbeitsbereich             des <a href="https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html">Planwerk-Detail Fenster</a> geladen.         </td>     </tr>     <tr>         <th>Pläne suchen</th>         <td>             Über das <strong>Suchfeld</strong> können Sie die Liste der Pläne durchsuchen.             Geben Sie einen Suchbegriff ein, beispielsweise einen Teil des Plannamens.             Die Liste wird während der Eingabe entsprechend eingeschränkt.             <div class="admonition tip">                 <p class="admonition-title">Tipp: Suche nach Gemeinde</p>                 <p>                      Die Liste der Planwerke kann auch nach dem Namen der planaufstellenden                     Gemeinde im Suchfeld gefiltert werden.                 </p>             </div>         </td>     </tr>     <tr>         <th>Nach Planart filtern</th>         <td>             Mit den Schaltflächen oberhalb der Planliste können Sie die angezeigten Pläne             nach ihrer Planart filtern:             <ul>                 <li><strong>BP_Plan</strong> – Bebauungspläne</li>                 <li><strong>FP_Plan</strong> – Flächennutzungspläne</li>                 <li><strong>LP_Plan</strong> – Landschaftspläne</li>                 <li><strong>RP_Plan</strong> – Regionalpläne</li>             </ul>             Durch erneutes Auswählen eines Filters können Sie die entsprechende             Einschränkung wieder aufheben.         </td>     </tr>     <tr>         <th>Pläne sortieren</th>         <td>             Über <strong>Sortieren nach</strong> können Sie festlegen, in welcher Reihenfolge             die Pläne angezeigt werden:             <ul>                 <li><strong>Name</strong> – sortiert die Pläne alphabetisch nach ihrem Namen.</li>                 <li><strong>Letzte</strong> – zeigt die zuletzt verwendeten bzw. zuletzt relevanten                     Pläne zuerst an.</li>             </ul>             Mehrfaches Anwählen der Buttons ändert die Reihenfolge der Sortierung             (aufsteigend/absteigend).         </td>     </tr>     <tr>         <th>Favoriten</th>         <td>             Häufig benötigte Pläne können Sie als <strong>Favoriten</strong> markieren.             Klicken Sie dazu auf das <strong>Stern-Symbol</strong> neben einem Plan.             Favorisierte Pläne werden im Bereich <strong>Favoriten</strong> am Anfang             der Liste angezeigt und können dadurch schneller wieder aufgerufen werden.             <br><br>              Um einen Plan aus den Favoriten zu entfernen, klicken Sie erneut auf             das Stern-Symbol.         </td>     </tr> </table>

# Detailansicht Planwerk

Im Fenster **Planwerk Details** lassen sich verschiedenen Funktionen und Inhalte abrufen, die einen einzelnen Plan in der Datenbank betreffen. Dabei wird immer der Plan in den Arbeitsbereich geladen, der im [Hauptdialog](<https://nti-de.github.io/SAGisXPlanung/elements/main-dialog.html>) in der Liste der Planwerke ausgewählt wurde.

Das Fenster **Planwerk Details** besteht aus den beiden Sektionen **Geometrieprüfung** und dem **Objektbaum**. Im oberen Bereich finden sich allgemeine Aktionen zum Anzeigen, Bearbeiten und Löschen des vorliegenden Plans.

#### Detailansicht für ein Planwerk öffnen

1. Gewünschtes Planwerk aus Liste im [Hauptdialog](<https://nti-de.github.io/SAGisXPlanung/elements/main-dialog.html>) wählen
2. Neben der Liste der Planwerke auf das Info-Symbol klicken

## Kartenanzeige

Jeder in der Datenbank erfasste Datensatz kann auf der QGIS-Karte visualisiert werden. Dabei wird eine standardmäßig konfigurierte Stilvorgabe und Layerreihenfolge des SAGis XPlanung angewendet. Eine Anpassung der individuelle Stile ist in den [Einstellungen](<https://nti-de.github.io/SAGisXPlanung/settings/symbology.html>) möglich.

#### Plan auf Karte anzeigen

- Mit dem Kartensymbol lässt sich der aktuell gewählte Plan auf der QGIS-Karte anzeigen

## Geometrieprüfung

Zur Erfassung eines qualitativ hochwertigen Planwerks ist topologisch korrektes Anlegen der Geometrien unerlässlich. XPlanung definiert hierfür einige Qualitätsvorgaben, die bei der Validierung einer XPlanGML-Datei geprüft werden. Mit der Geometrieprüfung unterstützt SAGis XPlanung die Einhaltung der Vorgaben zur korrekten geometrischen Erfassung.

Dies betrifft die folgenden Bedingungen:

- Geometrien sind valide nach [OGC Simple Feature Access](<https://www.ogc.org/standard/sfa/>) Standard
- Geometrien enthalten keine doppelten Stützpunkte
- Einhaltung des Flächenschlusskonzepts

> [!NOTE]
>
> **Was ist der Flächenschluss?**
>
> Bei der vollvektoriellen Erfassung muss der Zusammenschluss aller erfassten Flächen mit der Fläche des Geltungsbereichs übereinstimmen. Es dürfen keine Überlappungen oder Lücken zwischen den Flächen auftreten und keine Fläche darf den Umring des Geltungsbereichs übertreten. Angrenzende Objekte müssen sich an den Stützpunkten ihrer gemeinsamen Grenzen exakt berühren.

### Validierungsmethode

Über das Zahnrad-Symbol kann die Methode für die Geometrieprüfung ausgewählt werden.

- **Interne Validierung**

  ---

  Die Standardmethode von SAGis XPlanung zur schnellen Prüfung von Geometriefehlern.

  **Vorteile**

  - Sehr schnelle Ausführung direkt im QGIS/PostGIS
  - Fehler werden an gleichen Objekten zusammengefasst und dadurch übersichtlicher dargestellt
  - Gut geeignet für die laufende Bearbeitung eines Plans

  > **Hinweis**
  >
  > Die Ergebnisse der internen Methode entsprechen den Vorgaben des Standards XPlanung, dennoch stimmen Ergebnisse nicht zwangsläufig mit dem offiziellen Ergebnis des XPlanValidators überein, da ein anderer Prüfalgorithmus verwendet wird.
- **XPlanValidator**

  ---

  Offizielle Validierungsmethode der **XLeitstelle** durch Anbindung der Validator-API.

  **Vorteile**

  - Identische Fehlerergebnisse wie im offiziellen Validierungsprotokoll

  **Einschränkungen**

  - Langsamer als die interne Prüfung
  - Fehlermeldungen sind teilweise schwerer räumlich zu interpretieren

> [!TIP]
>
> **Empfohlene Verwendung**
>
> Verwenden Sie die **interne Validierung** während der Bearbeitung eines Plans für schnelle Rückmeldungen. Vor der Abgabe oder Veröffentlichung eines Plans empfiehlt sich zusätzlich eine Prüfung mit dem **XPlanValidator**, um die offiziellen Validierungsergebnisse zu erhalten.

#### Ausführen der Geometrieprüfung

1. Mit dem Button **Prüfung starten** den Prozess starten. Je nach Menge der erfassten Flächenschlussobjekte kann der Prozess einige Zeit in Anspruch nehmen
2. Sollte die Geometrieprüfung Fehler identifiziert haben, werden diese im Anschluss im Protokoll-Fenster angezeigt. Jede Fehlermeldung, kann durch einen Doppelklick auf die Fehlernachricht auf der Karte visualisiert werden.
3. Zum Beheben von Geometriefehlern können die [QGIS-Bearbeitungswerkzeuge](<https://docs.qgis.org/3.34/de/docs/user_manual/working_with_vector/editing_geometry_attributes.html>) verwendet werden.

#### Weitere Aktionen

<table markdown="span">         <tr markdown="span">             <th>Flächenschluss erzwingen</th>             <td>                 Die Funktion <b>Flächenschluss erzwingen</b> ermöglicht es, Flächen, die mit keiner Festsetzung                  konfiguriert sind, mit einem Objekt des Typ <code>BP_FlaecheOhneFestsetzung</code> oder                  <code>FP_FlaecheOhneDarstellung</code> zu füllen. Dies ist hilfreich, um die Flächenschlussbedingung zu                  erfüllen, wenn nicht die komplette Fläche des Geltungsbereichs mit vektoriell erfassten Planinhalten                  gefüllt werden kann.              </td>         </tr>         <tr markdown="span">             <th>Geltungsbereich aus Planinhalten berechnen</th>             <td>                 Die Funktion <b>Geltungsbereich aus Planinhalten berechnen</b> vereinigt die Geometrien aller Planinhalte                 der Flächenschlussebene (<code>flaechenschluss=true</code>) und setzt daraus den Geltungsbereich des                  Planwerks. Dieser Prozess erfolgt in zwei Schritten: <ol>                 <li>Anpassung aller <code>*P_Bereich</code>-Geometrien aus Vereinigung der enthaltenen Planinhalte</li>                 <li>Anpassung der <code>*P_Plan</code>-Geometrie aus Zusammenschluss der Bereiche des Plans</li>                 </ol>             </td>         </tr>     </table>

## Der Objektbaum

Der Objektbaum spiegelt die baumartige Struktur eines XPlanGML-Dokuments wider. Jeder XPlan-Datensatz besteht zunächst aus dem Grundobjekt `BP_Plan`/`FP_Plan`/etc. Diesem sind dann weitere Planinhalte zugeordnet. Dabei können einzelne Planinhalte wiederum anderen Inhalte zugeordnet sein, wodurch eine Baumstruktur entsteht.

Über den Objektbaum werden die folgenden Funktionen abgebildet:

- [Filtern und Sortieren der Planinhalte](<#filtern-und-sortieren>)
- [Bearbeiten von Sachdaten](<#bearbeiten-von-sachdaten>)
- [Hinzufügen neuer Datenobjekte](<https://nti-de.github.io/SAGisXPlanung/add-plancontent.html#datenobjekte>)
- [Löschen von einzelnen Inhalten](<#loschen-von-inhalten>)

### Filtern und Sortieren

Zur Navigation im Objektbaum, können alle erfassten Objekte sortiert und gefiltert werden. Zur Sortierung stehen die drei Optionen **Nach Objekthierarchie**, **Alphabetisch** und **Nach Kategorie** sortieren zur Verfügung (in Reihenfolge von links von rechts). Die standardmäßige Sortierung **Nach Objekthierarchie** spiegelt den Aufbau des XPlan-Datensatzes in der Struktur einer XPlanGML-Datei wider.

Mit dem Lupen-Symbol öffnet sich ein Suchfeld, das zum **Filtern** der angezeigten Objekte nach *Namen der Objektart* und *XPlanung-ID* genutzt werden kann.

### Bearbeiten von Sachdaten

Vollversion

> [!WARNING]
>
> Bearbeiten von Attributen ist in der Community-Version nur für Basisobjekte möglich.

1. Doppel-Klick auf einen Eintrag Objektbaum öffnet die Attribut-Ansicht
2. Doppel-Klick in eine Zelle der Spalte **Wert** öffnet einen Dialog zum Bearbeiten des gewählten Attributs
3. Gewünschte Anpassung am Attributwert eintragen und mit **Speichern** bestätigen

> [!TIP]
>
> Mit der Rückgängig-Funktion können letzte Änderungen an Attributen wieder gelöscht werden um den Datensatz in einen früheren Zustand zu versetzen.

> [!TIP]
>
> Funktion [*Mehrfachbearbeitung*](<https://nti-de.github.io/SAGisXPlanung/multi-edit.html>) für Änderungen an mehreren gleichen Planinhalten.

### Löschen von Inhalten

- Mit dem Mülleimer-Symbol im oberen Abschnitt des Fensters wird der gesamte Plan gelöscht

1. Objekte zum Löschen im Objektbaum auswählen (<kbd class="key-control">Ctrl</kbd> zur Mehrfachauswahl oder gesamten Bereich durch Ziehen der Maus markieren)
2. Mit der rechten Maustaste das Kontextmenü aufrufen
3. Mit **Planinhalt Löschen** werden gewählte Inhalte entfernt.

### Weitere Planinhalt-Aktionen

Der Objektbaum bietet weitere Funktionen, die auf einzelne erfasste Planinhalte angewendet werden können. Viele der Planinhalt-Aktionen können nur auf Objekten bestimmter XPlanung-Objektklassen oder Kategorien von Planinhalten ausgeführt werden.

1. Aufruf der Planinhalt-Aktionen über das Kontextmenü der Einträge im Objektbaum (Rechtsklick)

<table>  <br> <tr>       <th>Planinhalte</th>       <td>          <ul>             <li>                <i><a href="#loschen-von-inhalten">Planinhalt löschen</a></i>: Planinhalt aus der Datenbank entfernen                 (Bei Mehrfachauswahl werden alle gewählten Objekte gelöscht)             </li>             <li>                <i>Planinhalt auf Karte hervorheben</i>: Wenn der <a href="#kartenanzeige">Plan im Arbeitsbereich/Karte geladen</a>                ist, wird die Geometrie auf der Karte aufleuchten             </li>             <li>                <i><a href="https://nti-de.github.io/SAGisXPlanung/add-plancontent.html#datenobjekte-hinzufugen">Datenobjekt hinzufügen</a></i>             </li>             <br>             Bei Mehrfachauswahl:              <li>                <i><a href="https://nti-de.github.io/SAGisXPlanung/multi-edit.html">Gewählte Objekte bearbeiten</a></i>             </li>          </ul>       </td>    </tr> </table>

## Die Attributansicht

Die Attributansicht dient zur Anzeige und Bearbeitung aller fachlichen Eigenschaften eines einzelnen Planinhalts. In der Attributansicht werden sowohl einfache Attribute (z. B. Text, Zahlen, Auswahlwerte) als auch Beziehungen zu anderen Objekten übersichtlich dargestellt.

### Aufbau der Attributansicht

Die Attributansicht ist in mehrere Bereiche gegliedert:

- **Kopfbereich**

  - Anzeige der Objektart (z. B. `BP_BaugebietsTeilFlaeche`)
  - Icons zum Aufleuchten des Objekts auf der QGIS-Karte, sowie zum Fokussieren des Kartenausschnitts auf die Geometrie des Objekts
- **Filter- und Ansichtssteuerung**

  - **Suchen**: Textsuche über Attributnamen und Attributwerte
  - **Alle**: Anzeige aller Felder aus dem XPlanung-Datenmodell
  - **Beziehungen**: Anzeige ausschließlich von Relation zwischen XPlan-Objekten
  - **Attribut**: Anzeige ausschließlich einfacher Attribute
- **Attributtabelle**

  - Spalte **XPlanung-Attribut**: Name des Attributs gemäß XPlanung-Schema
  - Spalte **Wert**: Aktueller Attributwert bzw. Verweis auf verknüpfte Objekte

### Attributtypen

In der Attributansicht werden unterschiedliche Typen von Attributen dargestellt:

- **Einfache Attribute**  
  z. B. `uuid`, `text`, `rechtsstand`, `ebene`  
  → enthalten direkt editierbare Werte (Text, Zahlen, Auswahlwerte, Codelisten)
- **Beziehungen**  
  z. B. `gehörtZuBereich`, `wirdDargestelltDurch`  
  → verweisen auf andere XPlan-Objekte und zeigen die Anzahl der verknüpften Elemente an
- **Geometrieattribute**

  - `position`: zeigt den Geometrietyp (z. B. Polygon) und die Koordinaten
  - nicht editierbar, Bearbeitung erfolgt über die QGIS-Kartenwerkzeuge

# Planübersicht

Die Planübersicht, gibt einen Überblick auf alle in der Datenbank gespeicherten Pläne in tabellarischer Form. Weitere Aktionen im Dialog der Planübersicht:

1. [Suchen, Sortieren und Filtern](<#suchen-sortieren-und-filtern>)
2. [Planwerk-Aktionen](<#planwerk-aktionen>)
3. [Austausch mit XPlanung24](<#austausch-mit-xplanung24>)
4. [Tabellenimport](<#>)

#### Planübersicht öffnen

1. [Hauptdialog](<https://nti-de.github.io/SAGisXPlanung/elements/main-dialog.html>) der Anwendung aufrufen
2. Mit der Schaltfläche **ALLE ANZEIGEN** oberhalb der Planwerk-Auswahl wird die Planübersicht aufgerufen

## Suchen, Sortieren und Filtern

<table>     <tr>         <th>Suche</th>         <td> Im Suchfeld einen Suchbegriff eingeben und mit <span class="keys"><kbd class="key-enter">Enter</kbd></span> bestätigen </td>     </tr>     <tr>         <th>Filtern</th>         <td>             Zum Filtern der Pläne in der Tabelle stehen die beiden folgenden Funktionen zur Verfügung:             <ul>                 <li><i>Planart filtern</i>: In der Auswahlliste neben dem Suchfeld eine Auswahl der Planart getroffen werden</li>                 <li><i>Gemeinde filtern</i>: Über die rechte Auswahlliste können die Pläne in der Übersicht auf eine ausgewählte Gemeinde eingeschränkt werden</li>             </ul>         </td>     </tr>     <tr>         <th>Sortieren</th>         <td>             Die Sortierung der Einträge in der Tabelle kann durch Klicken in den Tabellenkopf in einer beliebigen Spalte beeinflusst werden         </td>     </tr> </table>

## Planwerk-Aktionen

Die Aktionsleiste unterhalb des Suchfelds bietet als Shortcuts den Zugriff auf einige Funktionen, die sich ebenfalls über die [Detailansicht eines Planwerks](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html>) aufrufen lassen.

<table>     <tr>         <th>Allgemeine Aktionen</th>         <td>             <ul>                 <li><i>Alle wählen/abwählen</i>: Auswahl aller Einträge auf der aktuellen Seite</li>                 <li><i>Aktualisieren</i>: Manuelles Synchronisieren der Einträge mit den Inhalten der Datenbank</li>             </ul>         </td>     </tr>     <tr>         <th>Planwerk-Aktionen</th>         <td>             Diese Gruppe an Aktionen betrifft die Auswahl in der Tabelle. Zum Wählen eines Eintrags an der entsprechenden             Stelle in die Tabelle klicken. Nach Auswahl stehen folgende Aktionen zur Verfügung:             <ul>                 <li><i>XPlanGML exportieren</i>: Gewählten Plan als XPlanGML-Datei exportieren</li>                 <li><i>Bearbeiten</i>: Öffnet den Dialog zum Bearbeiten der Sachdaten des gewählten Plans</li>                 <li><i>Kartenansicht</i>: Gewählten Plan auf der Karte anzeigen</li>                 <li><i>Löschen</i>: Gewählten Plan aus der Datenbank entfernen</li>             </ul>         </td>     </tr> </table>

## Austausch mit XPlanung24

Nach der Hinterlegung eines API-Schlüssels in den Einstellungen können Pläne direkt mit der Cloud-Plattform XPlanung24 ausgetauscht werden.

1. Gewünschte Pläne in der Planübersicht auswählen (Einzel- oder Mehrfachauswahl möglich)
2. Den XPlanung24-Dialog öffnen
3. Den gewünschten XPlanung24-Account aus der Dropdown-Liste auswählen
4. Über den Button *Hochladen* die ausgewählten Pläne in die Webplattform übertragen

1. Den XPlanung24-Dialog öffnen
2. Den gewünschten XPlanung24-Account aus der Dropdown-Liste auswählen
3. Verfügbare Pläne zum Download auswählen (Einzel- oder Mehrfachauswahl möglich)
4. Über den Button *Herunterladen* die ausgewählten Pläne aus XPlanung24 abrufen und in die lokale XPlan-Datenbank übernehmen

## Navigationswerkzeuge

Standardmäßig werden in der Planübersicht 10 Pläne angezeigt. Um weitere Pläne zu laden, kann mit den Pfeilsymbolen zu weiteren Seiten navigiert werden, wenn mehr als die initial geladenen Pläne in der Datenbank gespeichert sind.

## Einstellungen

Über das Zahnradsymbol kann der Dialog *Planübersicht* konfiguriert werden. Im Abschnitt **Allgemein** besteht die Möglichkeit, die Anzahl der Pläne pro Seite festzulegen. Im Abschnitt **Tabellenspalten anordnen** können einzelne Spalten ausgeblendet und per drag-and-drop die Anzeigereihenfolge der XPlan-Attribute angepasst werden.

# Einstellungen

# Codelisten

Die Verwendung von sogenannten Codelisten erlaubt es Informationen im XPlan-Format zu erfassen, die nicht direkt Teil des Standards sind. Ein Codelist-Attribut ähnelt den Schlüsselnummer-Attributen (Enumerationen), mit dem Unterschied, dass die vorgegebenen Auswahlwerte in einer externen Codeliste definiert sind. Codelisten werden in der GDI-DE Registry verwaltet.

Findet sich kein passender Eintrag in der Codeliste oder sind die vorhandenen Werte für den eigenen Datensatz nicht spezifisch genug oder unpassend, so kann die Leitstelle XPlanung / XBau kontaktiert werden, um die XPlanung-Codelisten um passende Werte zu erweitern.

- siehe [XLeitstelle: Externe Codelisten](<https://xleitstelle.de/Codelisten>)

#### Codelisten aus GDI-DE Registry abrufen

- Mit Button **GDI-DE Standards laden** werden die veröffentlichten Codelisten-Einträge aus der Registry abgerufen

> [!NOTE]
>
> **Info**
>
> Nach einmaligem Abruf der Codelisten-Einträge werden diese in der XPlan-Datenbank gespeichert. Falls Änderungen in der Registry veröffentlicht werden, müssen die Daten erneut abgerufen werden um auf entsprechende neue Werte zuzugreifen.

# Datenbank

Die Seite für Datenbank-Einstellungen ist in die folgenden zwei Fenster unterteilt:

### Verbindungsinformationen

|  |  |
| --- | --- |
| PostGIS Verbindung | Datenquelle für die XPlan-Daten. |
| Nutzername | Name eines PostgreSQL Nutzers mit Zugriff auf die unter *PostGIS Verbindung* gewählte Datenbank |
| Passwort | Passwort zur Authentifizierung im Zusammenhang mit dem gewählten Nutzernamen |

> [!TIP]
>
> **Verbindungsinformationen**
>
> Falls die Zugangsdaten bereits im QGIS über die PostGIS-Verbindung gespeichert sind, werden die Felder *Nutzername* und *Passwort* automatisch übernommen

### Verbindungstest

Mit dem Button *Verbindung testen* wird die Verbindung zur konfigurierten Datenbank geprüft. Bei erfolgreicher Verbindung wird die Version der installierten XPlan-Datenbank angezeigt. Sollte die Verbindung fehlschlagen wird im Dialog stattdessen eine Fehlermeldung angezeigt.

Mögliche Fehlermeldungen:

|  |  |
| --- | --- |
| Inkompatible Datenbankversion | Die Version der installierten QGIS-Erweiterung benötigt eine andere Version der XPlan-Datenbank. Sollte eine veraltete Datenbankversion vorliegen, besteht die Möglichkeit mit dem Button **Upgrade** die Datenbank auf den aktuellen Stand zu bringen. |
| fehlerhafter Nutzername/Passwort | Die angegebene Kombination aus Benutzernamen und Passwort hat keinen Zugriff auf die Datenbank |
| keine XPlan-Datenbank | Die angegebene PostGIS-Verbindung verweist nicht auf eine Datenbank, die dem XPlanung-Schema folgt |

Über die Seite *Neue Datenbank anlegen* kann eine neue (leere) XPlan-Datenbank angelegt werden. Dieser Prozess ist auf der Seite [Einrichtung einer Datenquelle](<https://nti-de.github.io/SAGisXPlanung/setup/database-setup.html>) beschrieben.

# Formulare

Im Fenster **Formulare** kann die Anzeige der Attributformulare für alle verfügbaren XPlan-Objektarten angepasst werden. Durch Wählen/Abwählen können einzelne Attribute in allen Dialogen, die ein Attributübersicht zeigen, entfernt werden. XPlan-Attribute, die als Pflichtattribute gekennzeichnet sind, können nicht ausgeblendet werden.

> [!TIP]
>
> Durch das Abwählen von wenig verwendeten Attributen, können die Eingabemasken für XPlan-Objekte vereinfacht und übersichtlicher gestaltet werden

# Allgemeine Einstellungen

Auf der Startseite der Einstellungen lassen sich die folgenden allgemeinen Einstellungen treffen:

## Exportoptionen

<table>     <tr>         <th>Pfad für externe Referenzen</th>         <td>Beim <a href="https://nti-de.github.io/plan-export">XPlanGML-Export</a> als ZIP-Archiv werden alle Externen Referenzen im angegebenen              Unterordner gespeichert. Mit Option <i>Referenzen im Hauptordner speichern</i> werden alle Referenzen auf gleicher             Ebene mit der XPlanGML-Datei verpackt</td>     </tr>     <tr>         <th>XPlanung-Version</th>         <td>Auswahlliste zum Wechseln der XPlanung-Version. Die festgelegte XPlanung-Version beeinflusst alle              verfügbaren Objektklassen, Attribute und Auswahllisten in der Anwendung <br>             <div class="admonition info">                 <p class="admonition-title">Info</p>                 <p>Beim Wechsel der Version werden keine Daten aus der Datenbank entfernt. Es findet jedoch keine                     Migration statt.</p>             </div>         </td>     </tr>     <tr>         <th>Schema für XPlanGML-Dateiname</th>         <td markdown="span">             Definiert das Namensschema der beim Export erzeugten XPlanGML-Datei.             Der Dateiname kann aus festen Texten und Platzhaltern zusammengesetzt werden.             <div class="admonition example">                 <p markdown="span">                      <b>Schema:</b>                     <div class="highlight"><pre><span></span><code>{ags}_{planArt}_{nummer}_{name}&#10;</code></pre></div>                     <b>Aufgelöster Dateiname:</b>                     <div class="highlight"><pre><span></span><code>09162000_BP_2026-001_Wiesenstraße.gml&#10;</code></pre></div>                 </p>             </div>              <details class="note" markdown="span" open="open">                 <summary>Verfügbare Platzhalter</summary>                 <table>                     <tr>                         <th>Platzhalter</th>                         <th>Beschreibung</th>                     </tr>                     <tr>                         <td><code>{ags}</code></td>                         <td>Amtlicher Gemeindeschlüssel</td>                     </tr>                     <tr>                         <td><code>{gemeindeName}</code></td>                         <td>Name der Gemeinde</td>                     </tr>                     <tr>                         <td><code>{planArt}</code></td>                         <td>Art des Plans (z. B. BP, FP, RP)</td>                     </tr>                     <tr>                         <td><code>{nummer}</code></td>                         <td>Plannummer</td>                     </tr>                     <tr>                         <td><code>{name}</code></td>                         <td>Name des Plans</td>                     </tr>                     <tr>                         <td><code>{datum}</code></td>                         <td>Aktuelles Datum des Exports</td>                     </tr>                     <tr>                         <td><code>{version}</code></td>                         <td>XPlan-Version der XPlanGML-Datei</td>                     </tr>                 </table>             </details>         </td>     </tr> </table>

## Validierung

<table>     <tr>         <th>Geometrien automatisch bereinigen</th>         <td markdown="span">Zum Erfüllen der <a href="https://nti-de.github.io/elements/plan-details#geometrieprufung">Geometrieprüfung</a> kann SAGis             XPlanung zwei Fehlerquellen bei der Datenerfassung automatisch korrigieren. Dies betrifft den <em>korrekten              Umlaufsinn von Polygongeometrien</em> und die Erfassung von <em>doppelten Stützpunkten</em>. <br><br>             Wenn die Option <i>Geometrien automatisch bereinigen</i> aktiviert ist, werden alle Geometrien, die neu in              der Datenbank erfasst werden automatisch korrigiert. Dieser Prozess kann durch die folgenden Optionen              konfiguriert werden:             <ul>                 <li>                     Topologie erhalten: Die Geometriebereinigung erhält die topologische Struktur der Geometrien. Es                      werden nur doppelte, aufeinanderfolgende Stützpunkte entfernt.                 </li>                 <li>                     bessere Erkennung doppelter Stützpunkte: Die Geometriebereinigung entfernt auch doppelte Stützpunkte,                      die nicht aufeinanderfolgend sind. Dies kann jedoch zu Änderungen in der Topologie führen.                  </li>             </ul>         </td>     </tr> </table>

## Objektformulare und Aktionen

|  |  |
| --- | --- |
| Attributdialog durch SAGis XPlanung ersetzen | Beim Öffnen des Objektformulars, nach Abfrage eines Einzelobjekts auf der Karte, wird statt dem nativen QGIS-Dialog die Attributansicht vom SAGis XPlanung automatisch geöffnet. |

# Einstellungen

In den Einstellungen kann das Verhalten der Anwendung konfiguriert werden.

#### Öffnen der Einstellungen

- In der QGIS-Menüleiste den Menüpunkt **SAGis | SAGis XPlanung | Einstellungen** aufrufen

> [!WARNING]
>
> Einstellungen werden im lokalen Benutzerverzeichnis gespeichert und damit nicht bei Anmeldung mit anderem Nutzer übernommen. Alle Einstellungen sind QGIS-Profil übergreifend, d.h. bei Wechsel des QGIS Profils werden die gleichen Einstellungen des SAGis XPlanung übernommen.

# Darstellung

Zur Symbolisierung erfasster Planinhalte auf der QGIS-Karte wird durch die Anwendung eine Stilvorgabe für viele XPlan-Objektklassen bereitgestellt.

In den *Darstellung*-Einstellungen kann sowohl die Darstellungsreihenfolge als auch die einzelnen Stilvorgaben angepasst werden. Die Darstellungsreihenfolge leitet sich dabei aus der Position der Einträge in der Liste ab. Eine höhere Position in der Liste wird beim Anzeigen eines Plans weiter oben angezeigt, während untere Einträge in der Liste auf der Karte in den Hintergrund rücken.

#### Symbolisierung bearbeiten

- Mit Doppelklick auf einen beliebigen Eintrag in der Liste der XPlan-Objektklassen öffnet sich ein Dialog zum Anpassen der Darstellungseinstellungen. Hier können alle üblichen QGIS-Konfigurationsmöglichkeiten angewandt werden um einen Stil zu laden oder anzupassen.

> [!NOTE]
>
> Viele XPlan-Objektklassen können mit unterschiedlichem Geometriebezug auftreten (Punkt, Linie oder Polygon). Für entsprechende Klassen existiert ein Eintrag pro Geometrietyp in der Liste der Objektklassen.

#### Darstellungsreihenfolge anpassen

- Nach Markieren eines Eintrags in der Liste der XPlan-Objektklassen kann der gewählte Eintrag mit den Pfeilsymbolen in der Aktionsleiste nach oben oder unten verschoben werden. Alternativ kann jeder Eintrag auch per drag-and-drop in der Liste verschoben werden.

#### Weitere Aktionen

- Aufruf weiterer Aktionen über das Menü (Button mit drei vertikalen Punkten in der Aktionsleiste)

|  |  |
| --- | --- |
| Einstellungen zurücksetzen | Setzt die Darstellungskonfiguration auf den von SAGis XPlanung bereitgestellten Standard zurück |
| Einstellungen exportieren/importieren | Funktion zum Export der konfigurierten Stilvorgaben. Eine exportierte Datei kann mit der Option *Einstellungen importieren* eingelesen werden |

## Benutzerdefinierte Stildateien

Neben der Option einzelne Stile anzupassen, besteht die Möglichkeit, in einem Verzeichnis für benutzerdefinierte Stile übliche QGIS-Stildefinitionen (QML-Dateien) abzulegen.

Das Verzeichnis kann mit dem Button **Öffnen** im Dateiexplorer geöffnet werden.

Alle hinterlegten Stildateien, müssen einem vorgegebenen Schema bei der Bezeichnung der Dateinamen folgen:

<table>     <tr>         <th>{XPlan-Objektart}-{Geometriedimension}.qml</th>         <td>             <ul>                 <li><b>XPlan-Objektart:</b> exakte Bezeichnung der XPlan-Objektklasse aus dem Katalog der Objektarten</li>                 <li><b>Geometriedimension:</b> 0 - Punktgeometrien, 1 - Liniengeometrien, 2 - Polygongeometrien</li>             </ul>             Beispielsweise <i>FP_BebauungsFlaeche-2.qml</i> für alle Flächengeometrien die eine Bebauungsfläche darstellen.         </td>     </tr> </table>

# Projekt und Support

# Häufige Fragen

## Installation

### Warum müssen für die Installation externe Python-Softwarepakete installiert werden?

SAGis XPlanung erweitert QGIS um spezialisierte Funktionen zur Erfassung, Bearbeitung und Verwaltung von XPlanGML-Daten. Da einige hierfür benötigte Technologien nicht Bestandteil der Standard-QGIS-Installation sind, müssen zusätzliche Python-Pakete über den Python-Paketmanager (`pip`) installiert werden. Alle externen Abhängigkeiten sind unter einer OpenSource-Lizenz verfügbar.

Die externen Pakete übernehmen folgende Aufgaben innerhalb der Anwendung:

- **[SQLAlchemy](<https://github.com/sqlalchemy/sqlalchemy>)**  
  Dient als objektorientierte Datenbankschnittstelle und ermöglicht die strukturierte Anbindung an  
  PostgreSQL/PostGIS-Datenbanken zum Zugriff auf das XPlan-Datenmodell.
- **[GeoAlchemy2](<https://github.com/geoalchemy/geoalchemy2>)**  
  Erweitert SQLAlchemy um räumliche Funktionen und unterstützt die Speicherung sowie Verarbeitung geografischer Objekte.
- **[asyncpg](<https://github.com/MagicStack/asyncpg>)**  
  Ein leistungsfähiger asynchroner PostgreSQL-Datenbanktreiber, der insbesondere bei datenintensiven Operationen und  
  größeren Datenmengen eine verbesserte Performance als der Standard-Datenbanktreiber im QGIS (`psycopg`) ermöglicht.
- **[qasync](<https://github.com/CabbageDevelopment/qasync>)**  
  Bindet asynchrone Python-Prozesse in die Qt-/QGIS-Oberfläche ein. Dadurch können datenbank- oder netzwerkintensive  
  Prozesse im Hintergrund ausgeführt werden, ohne die Benutzeroberfläche zu blockieren.

> [!NOTE]
>
> **Hinweis für Kunden der Vollversion**
>
> Für Kunden der Vollversion stellen wir auf Wunsch auch eine vollständig gebündelte Installationsversion mit  
> sämtlichen benötigten Python-Abhängigkeiten bereit. Diese Variante eignet sich insbesondere für IT-Umgebungen mit eingeschränkten Benutzerrechten, in denen keine eigenständige Installation externer Python-Pakete möglich ist.

# Kontakt &amp; Support

Bei Fragen zur Anwendung, technischen Problemen oder allgemeinen Anliegen stehen wir Ihnen gerne zur Verfügung.

## Technischer Support

Bei Supportanfragen zu Installation, Einrichtung, Fehlerbehebungen innerhalb der Software wenden Sie sich bitte an:

E-Mail: [support-de@nti-group.com](<mailto:support-de@nti-group.com>)

Um eine schnelle Bearbeitung Ihrer Anfrage zu ermöglichen, fügen Sie nach Möglichkeit folgende Informationen bei:

- Verwendete Software-Version
- Eingesetzte QGIS-Version
- Beschreibung des Problems
- Fehlermeldungen oder Screenshots

> [!TIP]
>
> **Protokoll-Datei beifügen**
>
> Fügen Sie Ihrer Anfrage gerne die Protokoll-Datei `XPlanung.log` bei. Sie befindet sich im Verzeichnis des installierten Plugins (sofern nicht anders konfiguriert):
>
> ```
> %APPDATA%\QGIS\QGIS3\profiles\default\python\plugins\SAGisXPlanung
> ```
>
> ```
> ~/.local/share/QGIS/QGIS3/profiles/default/python/plugins/SAGisXPlanung
> ```

---

## Allgemeine Anfragen

Für allgemeine Informationen, Projektanfragen oder organisatorische Themen erreichen Sie uns unter:

NTI Deutschland GmbH  
Kaiserstraße 14  
80801 München  
Telefon: +49 89 255 52155 0  
E-Mail: [info-de@nti-group.com](<mailto:info-de@nti-group.com>)

---

# SAGis XPlanung &amp; XPlanung24

**Effiziente XPlanung-Workflows von der Datenerfassung bis zur zentralen Bereitstellung**

XPlanung24 ist eine cloudbasierte Plattform zur zentralen Bereitstellung, Verwaltung und Vernetzung von XPlan-Daten für Kommunen, Planungsbüros und weitere Projektbeteiligte. SAGis XPlanung integriert eine direkte Schnittstelle zum Austausch von XPlan-Daten zwischen QGIS und der Webplattform. In dieser Kombination entsteht ein durchgängiger Workflow für die digitale Bauleitplanung – von der Erfassung mit SAGis XPlanung bis zur Veröffentlichung und Bereitstellung mit XPlanung24.

---

## Integration mit SAGis XPlanung

Durch die Integration von SAGis XPlanung und XPlanung24 können Planungsdaten effizient erstellt und anschließend nahtlos weiterverarbeitet werden:

- **1\. Datenerfassung in QGIS**

  ---

  Erstellung und Bearbeitung standardkonformer XPlanGML-Dokumente mit SAGis XPlanung.
- **2\. Datenaustausch mit XPlanung24 per API**

  ---

  Direkter Austausch von XPlanGML über die integrierte Schnittstelle. Nahtloser Upload von XPlan-Daten aus dem QGIS in die Cloud-Plattform und umgekehrt.
- **3\. Verteilung &amp; Zusammenarbeit**

  ---

  Bereitstellung für Kommunen, Behörden und weitere Projektbeteiligte.

---

Weiterführende Infos:

- [Zum Upload/Download von Plänen](<https://nti-de.github.io/SAGisXPlanung/elements/plan-overview.html#austausch-mit-xplanung24>)
- API-Schlüssel von XPlanung24 hinterlegen

# Changelog

# Änderungsprotokoll

In diesem Bereich werden die wichtigsten Änderungen und Neuerungen der Anwendung zusammengefasst. Der Fokus liegt dabei insbesondere auf neuen Funktionen, größeren Anpassungen der Benutzeroberfläche, sowie relevanten Verbesserungen im Arbeitsablauf.

Letzte Versionen:

- [Version 2.15.0](<https://nti-de.github.io/SAGisXPlanung/changelog/v2150.html>)
- [Version 2.14.3](<https://nti-de.github.io/SAGisXPlanung/changelog/v2143.html>)
- [Version 2.14.2](<https://nti-de.github.io/SAGisXPlanung/changelog/v2142.html>)
- [Version 2.14.1](<https://nti-de.github.io/SAGisXPlanung/changelog/v2141.html>)
- [Version 2.14.0](<https://nti-de.github.io/SAGisXPlanung/changelog/v214.html>)

Eine vollständige Übersicht aller Änderungen — einschließlich kleiner Fehlerbehebungen, technischer Anpassungen und interner Verbesserungen — befindet sich im offiziellen Projekt-Changelog auf GitHub:

# Version 2.14.0

*Release vom 19.05.2026*

## Unterstützung weiterer Objektklassen aus dem XPlanung-Datenmodell

Mit Version 2.14.0 wurden mehr als 40 zusätzliche Objektklassen aus dem XPlanung-Datenmodell integriert. Dadurch können weitere Fachobjekte direkt innerhalb der Anwendung erfasst, bearbeitet und visualisiert werden. Die Erweiterung verbessert insbesondere die Kompatibilität mit bestehenden XPlanGML-Datenbeständen und ermöglicht eine umfassendere Bearbeitung komplexer Planwerke.

---

## Filterfunktion beim Zuweisen von Textabschnitten

Bei der Auswahl und Verknüpfung von TextAbschnitten steht nun zusätzlich zur Suchfunktion auch eine Filtermöglichkeit zur Verfügung. Mit der Filter-Option *Nur Objekte des Plans* werden nur TextAbschnitte zur Auswahl angezeigt, die bereits in diesem Plandokument an anderer Stelle verwendet werden. Die neue Funktion erleichtert insbesondere die Arbeit in umfangreichen Projekten mit vielen textlichen Festsetzungen und verbessert die Übersichtlichkeit bei der Auswahl der Objekte in XPlanung-Relationen mit Kardinalität *m:n*.

---

## Löschen von XPlan-Objekten über das native QGIS-Werkzeug

XPlan-Objekte können nun direkt über das native QGIS-Werkzeug [**Ausgewähltes Löschen**](<https://docs.qgis.org/3.44/de/docs/user_manual/working_with_vector/editing_geometry_attributes.html#deleting-selected-features>) entfernt werden. Dadurch integriert sich die Bearbeitung von XPlan-Daten noch stärker in die gewohnte Arbeitsweise innerhalb von QGIS und ermöglicht ein konsistenteres Arbeiten direkt in der Kartenansicht.

Mit der neuen Funktion lassen sich zudem mehrere Objekte gleichzeitig löschen. Dies war bislang ausschließlich über die Auswahl im [Objektbaum](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#der-objektbaum>) möglich. Im Zuge dieser Erweiterung wurde außerdem die Unterstützung für das Rückgängigmachen von Löschvorgängen verbessert. Auch das gleichzeitige Löschen mehrerer Objekte kann nun über die Undo-/Redo-Funktion wiederhergestellt werden.

---

## Option zum automatischen Öffnen der SAGis-Attributansicht

In den [Einstellungen](<https://nti-de.github.io/SAGisXPlanung/settings/general.html#objektformulare-und-aktionen>) kann nun optional festgelegt werden, dass bei der Objektabfrage automatisch die SAGis-Attributansicht anstelle des standardmäßigen QGIS-Objektformulars geöffnet wird.

---

## Stilistische Verbesserungen verschiedener Objektklassen

Die Darstellung mehrerer Objektklassen wurde überarbeitet und visuell verbessert. Dies betrifft unter anderem:

- `SO_Strassenverkehr` (korrekte Unterscheidung `hatDarstellungMitBesondZweckbest`)
- `BP_Wegerecht` (korrekte Unterscheidung `istSchmal`)
- `FP_KeineZentrAbwasserBeseitigungFlaeche` (fehlender Stil nach PlanZV 15.1)

---

Alle weiteren Änderungen und Fehlerbehebungen:

# Version 2.14.1

*Release vom 23.06.2026*

## Geometrievalidierung optional mit XPlanValidator

Die [Geometrievalidierung](<https://nti-de.github.io/SAGisXPlanung/elements/plan-details.html#validierungsmethode>) kann nun optional über die XPlanValidator-API ausgeführt werden. Damit steht neben der bisherigen lokalen Prüfung eine weitere Methode zur Verfügung, um Planinhalte gegen die XPlan-Validierungsregeln zu prüfen.

---

## Planübersicht nach Gemeinde filtern

In der Planübersicht gibt es jetzt eine zusätzliche [Filtermöglichkeit](<https://nti-de.github.io/SAGisXPlanung/elements/plan-overview.html#suchen-sortieren-und-filtern>) nach Gemeinde. Dadurch lassen sich relevante Pläne in großen Datenbeständen deutlich schneller eingrenzen.

Zusammen mit einer kleineren Verbesserung bei den Suchergebnissen ist die Navigation in umfangreichen Datenbanken jetzt übersichtlicher.

---

## Flexiblere Dateibenennung beim Export

Die Benennung von Exportdateien wurde erweitert. Für XPlanGML steht jetzt eine UI-gestützte Konfiguration des Dateinamens zur Verfügung, inklusive vollständigem Resolver für Platzhalter. Die Konfiguration des Dateinamens kann in den Einstellungen unter der Kategorie [Exportoptionen](<https://nti-de.github.io/SAGisXPlanung/settings/general.html#exportoptionen>) eingestellt werden.

---

## Überarbeitete Einstellungen und Datenbank-Setup

Die Architektur des Einstellungsdialogs wurde modularisiert und auf zukünftige Erweiterungen ausgerichtet. Damit ist das Speichern von Einstellungen beim Schließen des Dialogs nun wesentlich schneller.

Gleichzeitig wurde die Benutzerführung beim [Einrichten der Datenbank](<https://nti-de.github.io/SAGisXPlanung/settings/database.html>) verbessert und bessere Hinweise bei fehlerhaften Eingaben eingeführt.

---

Alle weiteren Änderungen und Fehlerbehebungen:

# Version 2.14.2

*Release vom 06.07.2026*

## Verbesserungen der Symbolisierung diverser Objektklassen

Die Darstellung der Objektklassen `BP_SchutzPflegeEntwicklungsFlaeche`, `FP_SchutzPflegeEntwicklung` und `BP_VerEntsorgung` wurde überarbeitet.

Für die Versorgungsflächen steht jetzt ein eigenes Symbol für die Zweckbestimmung *Regenwasser* zur Verfügung.

Der Style für `BP_KennzeichnungsFlaeche` wurde überarbeitet. Zusätzlich steht nun auch für die Objektklasse `BP_Immissionsschutz` ein eigenes Stylesheet zur Verfügung.

Zusätzlich wurde ein defektes SVG-Symbol für Fußgängerbereiche korrigiert.

---

## Präsentationsobjekte für alle Geometrietypen

Präsentationsobjekte (Text- und Symbolannotationen) können jetzt nicht mehr nur für flächenhafte Planinhalte, sondern auch für Linien- und Punktgeometrien erstellt werden. Die Position wird dabei automatisch auf den Mittelpunkt (Zentroid) der Geometrie gesetzt, kann aber weiterhin auch beliebig angepasst werden.

---

Alle weiteren Änderungen und Fehlerbehebungen:

# Version 2.14.3

*Release vom 06.10.2026*

## Pläne in Zusammenzeichnung integrieren

Mit [Plan in Zusammenzeichnung integrieren](<https://nti-de.github.io/SAGisXPlanung/plan-combine.html>) können die Inhalte eines Planwerks vollständig in ein anderes Planwerk übernommen werden. Der Quellplan bleibt dabei unverändert erhalten.

Der neue Dialog führt in drei Schritten durch den Vorgang: Zielplan wählen, Vorschau prüfen, ausführen. Überlappende Inhalte des Zielplans werden automatisch zurückgeschnitten (Flächenschluss bleibt erhalten), der Geltungsbereich wird bei Bedarf erweitert.

---

## Neue Planwerk-Auswahl mit Suche, Filter und Favoriten

Die [Planauswahl](<https://nti-de.github.io/SAGisXPlanung/elements/main-dialog.html#planwerk-auswahl>) im Hauptdialog wurde neu gestaltet: Pläne lassen sich jetzt durchsuchen (auch nach Gemeinde), nach Planart filtern (BP/FP/LP/RP) und sortieren (Name/zuletzt verwendet). Häufig benötigte Pläne können per Stern-Symbol als Favoriten angeheftet werden.

---

## Dark Mode

Die Oberfläche unterstützt jetzt das dunkle Oberflächenthema von QGIS, welches unter QGIS4 bei dunklem UI-Thema des Betriebssystems standardmäßig verwendet wird.

---

## Verbesserte Darstellung

Überarbeitet wurden u. a. die Styles für `BP_Immissionsschutz` und `BP_Freiflaeche` sowie die Standarddarstellung von generische Linienobjekten in BP-Plänen.

---

Alle weiteren Änderungen und Fehlerbehebungen:

# Version 2.15.0

*Release vom 12.10.2026*

> [!NOTE]
>
> **Kleinerer Release**
>
> Viele ursprünglich für Version 2.15.0 geplante Änderungen wurden bereits in [Version 2.14.3](<https://nti-de.github.io/SAGisXPlanung/changelog/v2143.html>) vorgezogen und veröffentlicht. Dieser Release fällt daher kleiner aus und enthält hauptsächlich eine Ergänzung im Datenmodell sowie kleinere Verbesserungen und Fehlerbehebungen.

---

## Überarbeitung Wegerecht

Für das Attribut `typ` der Objektklasse `BP_Wegerecht` stehen in XPlanung 5.3 zusätzliche (veraltete) Ausprägungen zur Verfügung: *GehFahrrecht*, *GehLeitungsrecht*, *FahrLeitungsrecht* und *GehFahrLeitungsrecht*. Die Darstellung von Wegerechten berücksichtigt zudem jetzt auch Innenringe von Flächen.

---

## Weitere Verbesserungen und Fehlerbehebungen

- Neue Darstellung für `SO_Grenze` vom Typ *Vorgeschlagene Grundstücksgrenze*
- Die Explorer-Ansicht klappt bei aktiver Filterung automatisch alle Einträge auf, sodass Treffer sofort sichtbar sind
- Korrigierte Ausrichtung (`drehwinkel`) von Punktsymbolen und Präsentationsobjekten
- Undo/Redo-Schaltflächen in der Plan-Detailansicht sind wieder funktionsfähig

---

Alle weiteren Änderungen und Fehlerbehebungen:
