﻿Projekt Grundsteuer (Neu)  

Messbetragsverzeichnis XSD

README.txt und XSD Stand Version 1.0


Aufbau:

Verzeichnisse:
  "extern": Externe Definitionen, z.B. DIN-Typen
  "basis":  Top-Level Datentypen und Elemente speziell für GrSt
  "typen":  complexType Definitionen mit Elementen

Die eigentliche Messbetragsverzeichnis-XSD ist grstmbv.xsd, diese inkludiert die
unten im Baum dargestellten XSDs und beschreibt verbindlich das
offizielle Grundsteuer-Messbetragsverzeichnis-XML-Format auf Struktur- und
Format-Ebene.

In grstmbv.xsd wird bei der aktuellen Version die Zeitmarke der zugehörigen
Definitions-Tabelle angegeben.

Für Hinweise auf die fachlichen Zusammenhänge, Kennzeichen und Inhalte
bitte die der XSD zugrunde liegende Definitions-Tabelle (Excel-Format) verwenden.
Diese ist über die gleichen Kanäle wie die XSD zu beziehen.

Die in der XSD definierten Element-Namen für MBV-Inhalte sind die 1:1-Entsprechungen
in Schreibweise und Groß-/Klein-Schreibung der in der Tabelle
im Blatt "GMBVX_GMBAX_Grundlagen" definierten Einträge.

Für neue Typen ist ein Template, "leer.xsd", in typen abgelegt.
Der Name ist grstmbv-t-leer.xsd. Diese Datei ist nicht Bestandteil
der grstmbv.xsd Definition!

Namens-Konvention für die Dateinamen für Definitionen in typen:
  grstmbv-t-<Element-Name kleingeschrieben>.xsd

Aufbau der XSD:

grstmbv.xsd
|
|-- basis/grstmbv-elemente.xsd
|---- basis/grstmbv-extensions.xsd
|------ extern/din-91379-datatypes.xsd
|      
|-- typen/grstmbv-t-zerlegung.xsd
|---- basis/grstmbv-extensions.xsd
|------ extern/din-91379-datatypes.xsd
|      
|-- typen/grstmbv-t-lage-we.xsd
|---- basis/grstmbv-extensions.xsd
|------ extern/din-91379-datatypes.xsd
|      
|-- typen/grstmbv-t-eigentuemer.xsd
|---- basis/grstmbv-extensions.xsd
|------ extern/din-91379-datatypes.xsd
|      
|-- typen/grstmbv-t-vertreter.xsd   
|---- basis/grstmbv-extensions.xsd
|------ extern/din-91379-datatypes.xsd    

Als Vorlage für die Syntax-Prüfung ("Validierung")
dienen die Dateien im Ordner "test".

Die Validierung erfolgt mit einer manuell erstellten Test-XML ("grstmbv.xsd.xml")
und dem Script "validate-grstmbv.sh" in diesem Ordner.

ACHTUNG: 
Diese Test-XML dient nur dem Goodcase-Tests der Deltas zur jeweiligen Vorversion der XSD.
Es wird dringend empfohlen eigene fachlich getragene landesspezifische Tests zu generieren.

Das auf Python basierende Script verwendet Python 3.X
und benötigt als installiertes Paket
"xmlschema" (Installieren z.B. mit pip install xmlschema)
damit die XSD-1.1 Statements verarbeitet werden können. 
