Hinweise für Entwickler

Auf dieser Seiten finden Sie Hinweise und Codebeispiele für die Implementierung des gd2-Formates und zur GeDaTrans-Schnittstelle.

Inhaltsübersicht

  1. Dokumentation gd2-Standard
  2. gd2-Beispieldokument
  3. Schema-Datei (xsd)
  4. Changelog
  5. Versionen

Allgemeine Regeln zur Gültigkeit

  • gd2 ist ein XML-Dokument
  • die verwendete XML-Version ist 1.0
  • das Wurzel-Element heißt <gedatrans>...</gedatrans>
  • die Verschachtelung der Elemente muss zwingend eingehalten werden
  • die Reihenfolge der Elemente innerhalb ihrer jeweiligen Elternelemente ist beliebig

Leere Elemente

  • Elemente, deren Wert nicht bekannt ist, können im gd2-Dokument trotzdem vorkommen
  • diese Elemente sind wie folgt zu notieren <element/>
  • Beispiel: Typ des Leistungsnachweises ist unbekannt
                        
                            <leistungsnachweis_typ/>
                        
                    

Versionierung

  • gd2-Dokumente müssen zwingend Informationen über die verwendete xsd-Version beinhalten
  • diese Information wird im version-Attribut des <gedatrans>-Elementes gespeichert
  • die Vergabe der Versionsnummern folgt dem Semantic Versioning

tl;dr

  • Muster für Versionsnummern: MAJOR.MINOR.PATCH
  • positve Ganzzahlen ohne führende Null
  • inkrementelle Erhöhung
    • MAJOR: wenn API-Änderungen nicht rückwärts kompatibel sind
    • MINOR: wenn API-Änderungen rückwärts kompatibel implementiert sind
    • PATCH: wenn rückwärts kompatible Bugfixes implementiert werden
  • Beispiel: 1.10.2

Beispiel-Dokument

            
                <?xml version="1.0"?>
                <gedatrans version="1.0.4">
                    <praxisnachweis>
                        <name_gebaeude>EFH</name_gebaeude>
                        <leistungsnachweis_typ>1</leistungsnachweis_typ>
                        <foerderung_kfw>0</foerderung_kfw>
                        <denkmalschutz>0</denkmalschutz>
                        <foerderung_bafa>0</foerderung_bafa>
                        <effizienzhaus_niveau_nicht_moeglich>0</effizienzhaus_niveau_nicht_moeglich>
                        <gueltigkeit_pnw_jahr>2013</gueltigkeit_pnw_jahr>
                        <gueltigkeit_pnw_monat>11</gueltigkeit_pnw_monat>
                        <guetesiegel_id>geda-1456324764-56cdc09cf2382</guetesiegel_id>
                        <guetesiegel_type>2</guetesiegel_type>
                        <kundennummer>773064</kundennummer>
                        <internal_id>W00253230</internal_id>
                    </praxisnachweis>

                    <effizienzhausniveau>EH_55Referenz</effizienzhausniveau>

                    <basisangaben>
                        <objekt_plz>85521</objekt_plz>
                        <objekt_ort>Ottobrunn</objekt_ort>
                        <neubau_modernisierung>1</neubau_modernisierung>
                        <baujahr_gebaeude>2013</baujahr_gebaeude>
                        <nachweis_verfahren>3</nachweis_verfahren>
                        <anzahl_wohnungen>1</anzahl_wohnungen>
                        <anzahl_beheizte_geschosse>2</anzahl_beheizte_geschosse>
                        <dachtyp>1</dachtyp>
                        <keller_beheizt>4</keller_beheizt>
                        <gebaeudevolumen>868</gebaeudevolumen>
                        <umfassungsflaeche>559</umfassungsflaeche>
                        <gebaeudenutzflaeche>278</gebaeudenutzflaeche>
                        <bauart>MASSIV</bauart>
                        <gebauedetyp>FREISTEHEND</gebauedetyp>
                        <berechnungsart>DIN4108_4701</berechnungsart>
                        <softwareprodukt>ZUB Helena Professional 7.26</softwareprodukt>
                        <dachflaeche>102</dachflaeche>
                        <dach_uwert>0.165</dach_uwert>
                        <aussenwandflaeche>297.34</aussenwandflaeche>
                        <aussenwand_uwert>0.28</aussenwand_uwert>
                        <fensterflaeche>57.27</fensterflaeche>
                        <fenster_uwert>0.95</fenster_uwert>
                        <aussentuerflaeche>2.57</aussentuerflaeche>
                        <aussentuer_uwert>1.3</aussentuer_uwert>
                        <bodenflaeche>99.85</bodenflaeche>
                        <boden_uwert>0.28</boden_uwert>
                    </basisangaben>

                    <energieeffizienzangaben>
                        <jahresprimaerenergiebedarf>
                            <referenzgebaeude>70</referenzgebaeude>
                            <berechnungsobjekt>43.3</berechnungsobjekt>
                        </jahresprimaerenergiebedarf>

                        <endenergiebedarf>
                            <endenergiebedarf_energietraeger_1>Strom</endenergiebedarf_energietraeger_1>
                            <endenergiebedarf_heizung_1>7.1</endenergiebedarf_heizung_1>
                            <endenergiebedarf_warmwasser_1>4.2</endenergiebedarf_warmwasser_1>
                            <endenergiebedarf_hilfsgeraete_1>5.4</endenergiebedarf_hilfsgeraete_1>
                            <endenergiebedarf_energietraeger_2>Nicht vorhanden</endenergiebedarf_energietraeger_2>
                            <endenergiebedarf_heizung_2/>
                            <endenergiebedarf_warmwasser_2/>
                            <endenergiebedarf_hilfsgeraete_2/>
                            <endenergiebedarf_energietraeger_3>Nicht vorhanden</endenergiebedarf_energietraeger_3>
                            <endenergiebedarf_heizung_3/>
                            <endenergiebedarf_warmwasser_3/>
                            <endenergiebedarf_hilfsgeraete_3/>
                        </endenergiebedarf>

                        <transmissionswaermeverlust>
                            <referenzgebaeude>0.40</referenzgebaeude>
                            <berechnungsobjekt>0.32</berechnungsobjekt>
                        </transmissionswaermeverlust>

                        <luft_wechsel_rate>0.6</luft_wechsel_rate>

                        <luft_dichtheits_test>0.88</luft_dichtheits_test>

                        <waermebrueckenansatz>
                            <pauschalerwert>0.05</pauschalerwert>
                            <differenzierterwert>0.05</differenzierterwert>
                        </waermebrueckenansatz>

                        <solarthermischeanlage>
                            <heizkreistemperatur>FUSSBODEN_WAND_35_28</heizkreistemperatur>
                            <trinkwasserbereitung>
                                <solar_anlage_trinkwasser>0</solar_anlage_trinkwasser>
                                <deckungsanteil/>
                            </trinkwasserbereitung>
                            <heizungsunterstuetzung>
                                <solar_anlage_heizung>0</solar_anlage_heizung>
                                <deckungsanteil/>
                                <simulation>0</simulation>
                            </heizungsunterstuetzung>
                            <kollektoren>
                                <kollektorenart></kollektorenart>
                                <kollektorengroesse/>
                            </kollektoren>
                            <waermeabgabe/>
                        </solarthermischeanlage>
                    </energieeffizienzangaben>

                    <anlagentechnik>
                        <anlagensystem_heizung>13</anlagensystem_heizung>
                        <energietraeger_heizung>14</energietraeger_heizung>
                        <fp_heizung>1.8</fp_heizung>
                        <eg_heizung/>
                        <deckungsanteil_heizung>1</deckungsanteil_heizung>
                        <anlagensystem_warmwasser>12</anlagensystem_warmwasser>
                        <energietraeger_warmwasser>14</energietraeger_warmwasser>
                        <fp_warmwasser>1.8</fp_warmwasser>
                        <eg_warmwasser/>
                        <deckungsanteil_warmwasser>1</deckungsanteil_warmwasser>
                        <anlagensystem_heizung_add_2/>
                        <energietraeger_heizung_add_2/>
                        <fp_heizung_add_2/>
                        <eg_heizung_add_2/>
                        <deckungsanteil_heizung_add_2/>
                        <anlagensystem_heizung_add_3/>
                        <energietraeger_heizung_add_3/>
                        <fp_heizung_add_3/>
                        <eg_heizung_add_3/>
                        <deckungsanteil_heizung_add_3/>
                        <lueftungsanlage>1</lueftungsanlage>
                        <wirkungsgrad_lueftungsanlage>0.8</wirkungsgrad_lueftungsanlage>
                    </anlagentechnik>
                </gedatrans>
            
        

Schema (xsd)

            
                <?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           attributeFormDefault="unqualified"
           elementFormDefault="qualified"
           version="1.0.4">

    <xs:element name="gedatrans" type="gedatransType"/>

    <xs:complexType name="praxisnachweisType">
        <xs:all>
            <xs:element type="positiveIntegerOrEmpty" name="kundennummer" minOccurs="0" maxOccurs="1" />

            <xs:element type="stringOrEmpty" name="guetesiegel_id" minOccurs="0" maxOccurs="1" />

            <xs:element type="stringOrEmpty" name="internal_id" minOccurs="0" maxOccurs="1" />

            <xs:element name="guetesiegel_type" minOccurs="0" maxOccurs="1">
                <xs:simpleType>
                    <xs:restriction base="xs:integer">
                        <xs:enumeration value="2"/>
                    </xs:restriction>
                </xs:simpleType>
            </xs:element>

            <xs:element type="stringOrEmpty" name="name_gebaeude" minOccurs="0" maxOccurs="1" />

            <xs:element type="leistungsnachweis_typType" name="leistungsnachweis_typ" minOccurs="0" maxOccurs="1" />

            <xs:element type="booleanOrEmpty" name="foerderung_kfw" minOccurs="0" maxOccurs="1" />

            <xs:element type="booleanOrEmpty" name="denkmalschutz" minOccurs="0" maxOccurs="1" />

            <xs:element type="booleanOrEmpty" name="foerderung_bafa" minOccurs="0" maxOccurs="1" />

            <xs:element type="booleanOrEmpty" name="effizienzhaus_niveau_nicht_moeglich" minOccurs="0" maxOccurs="1" />

            <xs:element name="gueltigkeit_pnw_jahr" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Jahr, in dem alle erforderlichen Leistungen zur Erstellung des Praxisnachweis erbracht worden sind.<br />
                        <br />
                        <strong>BAFA-Vor-Ort-Beratung</strong><br />
                        Erstellung des Beratungsberichts<br />
                        <br />
                        <strong>KfW-Programme</strong><br />
                        Fertigstellung aller baulichen Maßnahmen zur Erfüllung der Förderbedingungen
                        ]]>
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:gYear"/>
                </xs:simpleType>
            </xs:element>

            <xs:element type="gueltigkeit_pnw_monatType" name="gueltigkeit_pnw_monat" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="basisangabenType">
        <xs:all>
            <xs:element name="objekt_plz" minOccurs="0" maxOccurs="1">
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:string"/>
                </xs:simpleType>
            </xs:element>

            <xs:element type="stringOrEmpty" name="objekt_ort" minOccurs="0" maxOccurs="1" />

            <xs:element type="neubau_modernisierungType" name="neubau_modernisierung" minOccurs="0" maxOccurs="1" />

            <xs:element name="baujahr_gebaeude" minOccurs="0" maxOccurs="1">
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:gYear"/>
                </xs:simpleType>
            </xs:element>

            <xs:element type="nachweis_verfahrenType" name="nachweis_verfahren" minOccurs="0" maxOccurs="1" />

            <xs:element type="positiveIntegerOrEmpty" name="anzahl_wohnungen" minOccurs="0" maxOccurs="1" />

            <xs:element type="positiveIntegerOrEmpty" name="anzahl_beheizte_geschosse" minOccurs="0" maxOccurs="1" />

            <xs:element type="dachtypType" name="dachtyp" minOccurs="0" maxOccurs="1" />

            <xs:element type="keller_beheiztType" name="keller_beheizt" minOccurs="0" maxOccurs="1" />

            <xs:element type="gebaeudevolumenType" name="gebaeudevolumen" minOccurs="0" maxOccurs="1" />

            <xs:element type="umfassungsflaecheType" name="umfassungsflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="gebaeudenutzflaecheType" name="gebaeudenutzflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="bauartType" name="bauart" minOccurs="0" maxOccurs="1" />

            <xs:element type="gebaeudetypType" name="gebauedetyp" minOccurs="0" maxOccurs="1" />

            <xs:element type="berechnungsartType" name="berechnungsart" minOccurs="0" maxOccurs="1" />

            <xs:element type="stringOrEmpty" name="softwareprodukt" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="dachflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="uwert_gebaeudeType" name="dach_uwert" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="aussenwandflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="uwert_gebaeudeType" name="aussenwand_uwert" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="fensterflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="uwert_fenster_tuerType" name="fenster_uwert" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="aussentuerflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="uwert_fenster_tuerType" name="aussentuer_uwert" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="bodenflaeche" minOccurs="0" maxOccurs="1" />

            <xs:element type="uwert_gebaeudeType" name="boden_uwert" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="jahresprimaerenergiebedarfType">
        <xs:all>
            <xs:element type="jpeb_referenzgebaeudeType" name="referenzgebaeude" minOccurs="0" maxOccurs="1" />

            <xs:element type="jpeb_berechnungsobjektType" name="berechnungsobjekt" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="endenergiebedarfType">
        <xs:all>
            <xs:element type="stringOrEmpty" name="endenergiebedarf_energietraeger_1" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_heizung_1" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_warmwasser_1" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_hilfsgeraete_1" minOccurs="0" maxOccurs="1" />

            <xs:element type="stringOrEmpty" name="endenergiebedarf_energietraeger_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_heizung_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_warmwasser_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_hilfsgeraete_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="stringOrEmpty" name="endenergiebedarf_energietraeger_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_heizung_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_warmwasser_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="endenergiebedarf_hilfsgeraete_3" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="transmissionswaermeverlustType">
        <xs:all>
            <xs:element type="tmwv_referenzgebaeudeType" name="referenzgebaeude" minOccurs="0" maxOccurs="1" />

            <xs:element type="tmwv_berechnungsobjektType" name="berechnungsobjekt" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="waermebrueckenansatzType">
        <xs:all>
            <xs:element type="pauschalerwertType" name="pauschalerwert" minOccurs="0" maxOccurs="1" />

            <xs:element type="differenzierterwertType" name="differenzierterwert" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="solarthermischeanlageType">
        <xs:all>
            <xs:element type="trinkwasserbereitungType" name="trinkwasserbereitung" minOccurs="0" maxOccurs="1" />

            <xs:element type="heizungsunterstuetzungType" name="heizungsunterstuetzung" minOccurs="0" maxOccurs="1" />

            <xs:element type="kollektorenType" name="kollektoren" minOccurs="0" maxOccurs="1" />

            <xs:element type="realOrEmpty" name="waermeabgabe" minOccurs="0" maxOccurs="1" />

            <xs:element type="heizkreistemperaturType" name="heizkreistemperatur" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="energieeffizienzangabenType">
        <xs:all>
            <xs:element type="jahresprimaerenergiebedarfType" name="jahresprimaerenergiebedarf" minOccurs="0" maxOccurs="1" />

            <xs:element type="endenergiebedarfType" name="endenergiebedarf" minOccurs="0" maxOccurs="1" />

            <xs:element type="transmissionswaermeverlustType" name="transmissionswaermeverlust" minOccurs="0" maxOccurs="1" />

            <xs:element type="luft_wechsel_rateType" name="luft_wechsel_rate" minOccurs="0" maxOccurs="1" />

            <xs:element type="luft_dichtheits_testType" name="luft_dichtheits_test" minOccurs="0" maxOccurs="1" />

            <xs:element type="waermebrueckenansatzType" name="waermebrueckenansatz" minOccurs="0" maxOccurs="1" />

            <xs:element type="solarthermischeanlageType" name="solarthermischeanlage" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnikType">
        <xs:all>
            <xs:element type="anlagensystem_heizungType" name="anlagensystem_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagensystem_energietraegerType" name="energietraeger_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="fp_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="eg_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="deckungsanteil_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagensystem_warmwasserType" name="anlagensystem_warmwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagensystem_energietraegerType" name="energietraeger_warmwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="fp_warmwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="eg_warmwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="deckungsanteil_warmwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="lueftungsanlageType" name="lueftungsanlage" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="wirkungsgrad_lueftungsanlage" minOccurs="0" maxOccurs="1" />

            <!-- Heinzung 2 -->
            <xs:element type="anlagensystem_heizungType" name="anlagensystem_heizung_add_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagensystem_energietraegerType" name="energietraeger_heizung_add_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="fp_heizung_add_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="eg_heizung_add_2" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="deckungsanteil_heizung_add_2" minOccurs="0" maxOccurs="1" />

            <!-- Heizung 3 -->
            <xs:element type="anlagensystem_heizungType" name="anlagensystem_heizung_add_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagensystem_energietraegerType" name="energietraeger_heizung_add_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="fp_heizung_add_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="fp_egType" name="eg_heizung_add_3" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="deckungsanteil_heizung_add_3" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="trinkwasserbereitungType">
        <xs:all>
            <xs:element type="booleanOrEmpty" name="solar_anlage_trinkwasser" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax100Type" name="deckungsanteil" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="heizungsunterstuetzungType">
        <xs:all>
            <xs:element type="booleanOrEmpty" name="solar_anlage_heizung" minOccurs="0" maxOccurs="1" />

            <xs:element type="deckungsanteilMax60Type" name="deckungsanteil" minOccurs="0" maxOccurs="1" />

            <xs:element type="booleanOrEmpty" name="simulation" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="gedatransType">
        <xs:all>
            <xs:element type="effizienzhausniveauType" name="effizienzhausniveau" minOccurs="0" maxOccurs="1" />

            <xs:element type="praxisnachweisType" name="praxisnachweis" minOccurs="0" maxOccurs="1" />

            <xs:element type="basisangabenType" name="basisangaben" minOccurs="0" maxOccurs="1" />

            <xs:element type="energieeffizienzangabenType" name="energieeffizienzangaben" minOccurs="0" maxOccurs="1" />

            <xs:element type="anlagentechnikType" name="anlagentechnik" minOccurs="0" maxOccurs="1" />

            <!--<xs:element type="solarthermischeanlageType" name="solarthermischeanlage" minOccurs="0" maxOccurs="1" />-->
        </xs:all>
        <xs:attribute ref="version" use="required" />
    </xs:complexType>

    <xs:complexType name="kollektorenType">
        <xs:all>
            <xs:element type="kollektorenartType" name="kollektorenart" minOccurs="0" maxOccurs="1" />

            <xs:element type="kollektorengroesseType" name="kollektorengroesse" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <!-- BEGIN validation types -->
    <xs:simpleType name="leistungsnachweis_typType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Leistungsnachweise sind durch GeDaTrans möglich:<br />
                1 - KfW Planung<br />
                2 - KfW Baubegleitung<br />
                3 - BAFA<br />
                4 - KfW Bilanzierung ergänzend zu Einzelmaßnahmen<br />
                5 - KfW Planung Denkmal<br />
                6 - KfW Baubegleitung Denkmal
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="6"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gueltigkeit_pnw_monatType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Monat, in dem alle erforderlichen Leistungen zur Erstellung des Praxisnachweis erbracht worden sind.<br />
                <br />
                <strong>BAFA-Vor-Ort-Beratung</strong><br />
                Erstellung des Beratungsberichts<br />
                <br />
                <strong>KfW-Programme</strong><br />
                Fertigstellung aller baulichen Maßnahmen zur Erfüllung der Förderbedingungen
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="12"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="effizienzhausniveauType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Definiert die Art des Effizienzhausniveaus.<br />
                <i>leer</i> - kein Effizienzhausstandard<br />
                EH_40 - Effizienzhaus 40<br />
                EH_40Plus - Effizienzhaus 40 plus<br />
                EH_55 - Effizienzhaus 55<br />
                EH_55Referenz - Effizienzhaus 55 nach Referenzwerten<br />
                EH_70 - Effizienzhaus 70<br />
                EH_85 - Effizienzhaus 85<br />
                EH_100 - Effizienzhaus 100<br />
                EH_115 - Effizienzhaus 115<br />
                EH_Denkmal160 - Effizienzhaus Denkmal 160%-Wert eingehalten<br />
                EH_DenkmalNicht160 - KfW Effizienzhaus Denkmal Ausnahme. 160%-Wert nicht eingehalten<br />
                EH_40_EE (Effizienzhaus 40 EE-Klasse)<br />
                EH_40_NH (Effizienzhaus 40 NH-Klasse)<br />
                EH_55_EE (Effizienzhaus 55 EE-Klasse)<br />
                EH_55_NH (Effizienzhaus 55 NH-Klasse)<br />
                EH_70_EE (Effizienzhaus 70 EE-Klasse)<br />
                EH_85_EE (Effizienzhaus 85 EE-Klasse)<br />
                EH_100_EE (Effizienzhaus 100 EE-Klasse)<br />
                EH_Denkmal_EE (Effizienzhaus Denkmal EE-Klasse)
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="EH_115"/>
                    <xs:enumeration value="EH_100"/>
                    <xs:enumeration value="EH_85"/>
                    <xs:enumeration value="EH_70"/>
                    <xs:enumeration value="EH_55"/>
                    <xs:enumeration value="EH_55Referenz"/>
                    <xs:enumeration value="EH_40"/>
                    <xs:enumeration value="EH_40Plus"/>
                    <xs:enumeration value="EH_Denkmal160"/>
                    <xs:enumeration value="EH_DenkmalNicht160"/>
                    <xs:enumeration value="EH_40_EE"/>
                    <xs:enumeration value="EH_40_NH"/>
                    <xs:enumeration value="EH_55_EE"/>
                    <xs:enumeration value="EH_55_NH"/>
                    <xs:enumeration value="EH_70_EE"/>
                    <xs:enumeration value="EH_85_EE"/>
                    <xs:enumeration value="EH_100_EE"/>
                    <xs:enumeration value="EH_Denkmal_EE"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="neubau_modernisierungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Definiert die Art des Bauvorhabens.<br />
                1 - Neubau<br />
                2 - Modernisierung
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="2"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="nachweis_verfahrenType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Beschreibung des Nachweisverfahrens<br />
                1 - EnEV 2009<br />
                3 - EnEV 2009 zzgl. KfW-Spezifikationen<br />
                4 - EnEV 2014<br />
                5 - EnEV 2014 zzgl. KfW-Spezifikationen<br />
                6 - EnEV 2016 (verschärfte Anf.)<br />
                7 - EnEV 2016 (verschärfte Anf.) zzgl. KfW-Spezifikationen<br />
                8 - GEG 2020
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="1"/>
                    <xs:enumeration value="3"/>
                    <xs:enumeration value="4"/>
                    <xs:enumeration value="5"/>
                    <xs:enumeration value="6"/>
                    <xs:enumeration value="7"/>
                    <xs:enumeration value="8"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="dachtypType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Dachtypen werden unterstützt.<br />
                1 - Flachdach<br />
                2 - Schrägdach - beheizt<br />
                3 - Schrägdach - unbeheizt (teilweise oder vollständig)
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="3"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="keller_beheiztType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Kellervarianten können eingegeben werden:<br />
                1 - kein Keller vorhanden<br />
                2 - Keller unbeheizt<br />
                3 - Keller teilweise beheizt<br />
                4 - Keller vorwiegend beheizt
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="4"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="bauartType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="MASSIV"/>
                    <xs:enumeration value="LEICHT"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeudetypType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="FREISTEHEND"/>
                    <xs:enumeration value="EINSEITIG"/>
                    <xs:enumeration value="ANGEBAUT"/>
                    <xs:enumeration value="ANDERS GEBAUT"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="berechnungsartType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="DIN4108_4701"/>
                    <xs:enumeration value="DIN18599"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeudevolumenType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="100"/>
                    <xs:maxInclusive value="250000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="umfassungsflaecheType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="50"/>
                    <xs:maxInclusive value="100000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeudenutzflaecheType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="30"/>
                    <xs:maxInclusive value="80000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_gebaeudeType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.01"/>
                    <xs:maxInclusive value="4"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_fenster_tuerType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.01"/>
                    <xs:maxInclusive value="6"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="jpeb_referenzgebaeudeType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="40"/>
                    <xs:maxInclusive value="150"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="jpeb_berechnungsobjektType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="250"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="tmwv_referenzgebaeudeType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.25"/>
                    <xs:maxInclusive value="0.91"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="tmwv_berechnungsobjektType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.14"/>
                    <xs:maxInclusive value="2.5"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="pauschalerwertType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:decimal">
                    <xs:enumeration value="0.05"/>
                    <xs:enumeration value="0.10"/>
                    <xs:enumeration value="0.15"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="differenzierterwertType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="-0.05"/>
                    <xs:maxInclusive value="0.15"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="heizkreistemperaturType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="FUSSBODEN_WAND_35_28"/>
                    <xs:enumeration value="HEIZKOERPER_55"/>
                    <xs:enumeration value="HEIZKOERPER_70"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="kollektorenartType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="FLACHKOLLEKTOREN"/>
                    <xs:enumeration value="ROEHRENKOLLEKTOREN"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="kollektorengroesseType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="9999"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="deckungsanteilMax100Type">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.01"/>
                    <xs:maxInclusive value="1"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="deckungsanteilMax60Type">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.01"/>
                    <xs:maxInclusive value="0.6"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="luft_wechsel_rateType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.5"/>
                    <xs:maxInclusive value="1.0"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="luft_dichtheits_testType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.1"/>
                    <xs:maxInclusive value="3.5"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_heizungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Heizungssysteme können angegeben werden:<br />
                1 - Sonstige Kessel<br />
                2 - Standardkessel<br />
                3 - Niedertemperatur-Kessel<br />
                4 - Brennwert-Kessel<br />
                5 - Nah-/Fernwärme<br />
                6 - Elektro-Speicher, zentral<br />
                7 - Elektro-Speicher, dezentral<br />
                8 - El.-Direkthzg./Durchlauferh.<br />
                9 - Sonstige Wärmepumpen<br />
                10 - Wärmepumpe Außenluft<br />
                11 - Wärmepumpe Erdreich<br />
                12 - Wärmepumpe Abluft<br />
                13 - Wärmepumpe Grundwasser<br />
                14 - Wärmepumpe, mehrere<br />
                15 - Einzelofen, ölbefeuert<br />
                16 - Einzelofen, Steinkohle<br />
                17 - Einzelofen, Holz<br />
                18 - Einzelofen/Durchlauferh., Gas<br />
                19 - Kraft-Wärme-Kopplung<br />
                21 - Dampferzeuger<br />
                22 - Sonstige<br />
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="22"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_warmwasserType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Heizungssysteme können angegeben werden:<br />
                0 - Mit Heizung kombiniert<br />
                1 - Sonstige Kessel<br />
                2 - Standardkessel<br />
                3 - Niedertemperatur-Kessel<br />
                4 - Brennwert-Kessel<br />
                5 - Nah-/Fernwärme<br />
                6 - Elektro-Speicher, zentral<br />
                7 - Elektro-Speicher, dezentral<br />
                8 - El.-Direkthzg./Durchlauferh.<br />
                9 - Sonstige Wärmepumpen<br />
                10 - Wärmepumpe Außenluft<br />
                11 - Wärmepumpe Erdreich<br />
                12 - Wärmepumpe Abluft<br />
                13 - Wärmepumpe Grundwasser<br />
                14 - Wärmepumpe, mehrere<br />
                15 - Einzelofen, ölbefeuert<br />
                16 - Einzelofen, Steinkohle<br />
                17 - Einzelofen, Holz<br />
                18 - Einzelofen/Durchlauferh., Gas<br />
                19 - Kraft-Wärme-Kopplung<br />
                21 - Dampferzeuger<br />
                22 - Sonstige
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:nonNegativeInteger">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="22"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_energietraegerType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                17 - Nicht vorhanden<br />
                1 - Erdgas<br />
                2 - Erdgas E<br />
                3 - Erdgas LL<br />
                4 - Flüssiggas<br />
                5 - Heizöl<br />
                6 - Kohle<br />
                7 - Steinkohle<br />
                8 - Braunkohle<br />
                9 - Biomasse<br />
                10 - Scheitholz<br />
                11 - Holz-Pellets<br />
                12 - Holzhackschnitzel<br />
                13 - Sonstige Biomasse<br />
                14 - Strom<br />
                15 - Nah-/Fernwärme<br />
                16 - Sonstige
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="17"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="fp_egType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="5"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="lueftungsanlageType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Als Lüftungsanlage können folgende Werte genutzt werden:<br />
                0 - nicht vorhanden<br />
                1 - zentrale Lüftungsanlage mit WRG<br />
                3 - zentrale Lüftungsanlage ohne WRG<br />
                2 - dezentrale Lüftungsanlage mit WRG<br />
                4 - dezentrale Lüftungsanlage ohne WRG<br />
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:nonNegativeInteger">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="4"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
    <!-- END validation types -->

    <!-- BEGIN reusable types -->
    <xs:simpleType name="emptyValue">
        <xs:restriction base="xs:string">
            <xs:enumeration value=""/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="real">
        <xs:restriction base="xs:decimal">
            <xs:pattern value="[0-9]+(\.{1}[0-9]+)?"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="booleanOrEmpty">
        <xs:union memberTypes="emptyValue xs:boolean"/>
    </xs:simpleType>

    <xs:simpleType name="positiveIntegerOrEmpty">
        <xs:union memberTypes="emptyValue xs:positiveInteger"/>
    </xs:simpleType>

    <xs:simpleType name="nonNegativeIntegerOrEmpty">
        <xs:union memberTypes="emptyValue xs:nonNegativeInteger"/>
    </xs:simpleType>

    <xs:simpleType name="stringOrEmpty">
        <xs:union memberTypes="emptyValue xs:string"/>
    </xs:simpleType>

    <xs:simpleType name="realOrEmpty">
        <xs:union memberTypes="emptyValue real"/>
    </xs:simpleType>

    <xs:simpleType name="attributeVersionType">
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9]+\.{1}[0-9]+\.{1}[0-9]+"/>
        </xs:restriction>
    </xs:simpleType>
    <!-- END reusable types -->

    <!-- ATTRIBUTES -->
    <xs:attribute name="version" type="attributeVersionType" />
    <!-- END ATTRIBUTES -->
</xs:schema>
            
        

Changelog

v1.0.4 - 2021-12-10

  • Ergänzung folgender Werte für nachweis_verfahren:
    • GEG (2020)
  • Ergänzung folgender Werte für effizienzhausniveau:
    • EH_40_EE - Effizienzhaus 40 EE-Klasse
    • EH_40_NH - Effizienzhaus 40 NH-Klasse
    • EH_55_EE - Effizienzhaus 55 EE-Klasse
    • EH_55_NH - Effizienzhaus 55 NH-Klasse
    • EH_70_EE - Effizienzhaus 70 EE-Klasse
    • EH_85_EE - Effizienzhaus 85 EE-Klasse
    • EH_100_EE - Effizienzhaus 100 EE-Klasse
    • EH_Denkmal_EE - Effizienzhaus Denkmal EE-Klasse
Ein Versionsupgrade wurde nicht durchgeführt, um höchstmögliche Kompatibilität zu bestehenden Softwareimplementierungen zu gewährleisten.

v1.0.4 - 2016-03-17

  • Ergänzung folgender Werte für effizienzhausniveau:
    • EH_40Plus - Effizienzhaus 40 plus
    • EH_55Referenz - Effizienzhaus 55 nach Referenzwerten

v1.0.3 - 2015-12-11

  • Erste öffentliche Version
  • Anpassung an KfW-Struktur
    • effizienzhausniveau als eigenes Element in Root
    • gebauedetyp (Übernahme Typo KfW)
    • bauart Großschreibung
    • kollektoren in solarthermischeanlage
    • trinkwasser umbenannt in trinkwasserbereitung
    • Ergänzung Dokumentation

v1.0.2 - 2015-12-03

  • Felder für Endenergieträger Heizung/Warmwasser berücksichtigen individuell eingetragene Werte
  • Korrektur Umwandlung Dezimalwerte

v1.0.1 - 2015-11-24

  • Elemente in xsd als optional gekennzeichnet
  • Anpassung neubau_modernisierung, wenn leistungsnachweis_typ = 3 = BAFA
  • name_gebaeude in Sektion praxisnachweis hinzugefügt
  • Datentyp für objekt_plz von short auf string geändert
  • Inline-Dokumentation für xsd-Elemente

v1.0.0 - 2015-09-30

  • initiale Veröffentlichung

Inhaltsübersicht

  1. Dokumentation gd3-Standard
  2. gd3-Beispieldokument
  3. Schema-Datei (xsd)
  4. Hinweise zum Inhalt
  5. Changelog
  6. Versionen

Allgemeine Regeln zur Gültigkeit

  • gd3 ist ein XML-Dokument
  • die verwendete XML-Version ist 1.0
  • das Wurzel-Element heißt <gedatrans>...</gedatrans>
  • die Verschachtelung der Elemente muss zwingend eingehalten werden
  • die Reihenfolge der Elemente innerhalb ihrer jeweiligen Elternelemente ist beliebig

Leere Elemente

  • Elemente, deren Wert nicht bekannt ist, können im gd3-Dokument trotzdem vorkommen
  • diese Elemente sind wie folgt zu notieren <element/>
  • Beispiel: Art des Bauvorhabens ist unbekannt
                        
                            <art_bauvorhaben/>
                        
                    

Versionierung

  • gd3-Dokumente müssen zwingend Informationen über die verwendete xsd-Version beinhalten
  • diese Information wird im version-Attribut des <gedatrans>-Elementes gespeichert
  • die Vergabe der Versionsnummern folgt dem Semantic Versioning

tl;dr

  • Muster für Versionsnummern: MAJOR.MINOR.PATCH
  • positve Ganzzahlen ohne führende Null
  • inkrementelle Erhöhung
    • MAJOR: wenn API-Änderungen nicht rückwärts kompatibel sind
    • MINOR: wenn API-Änderungen rückwärts kompatibel implementiert sind
    • PATCH: wenn rückwärts kompatible Bugfixes implementiert werden
  • Beispiel: 1.10.2

Beispiel-Dokument

            
                <?xml version="1.0"?>
                <gedatrans version="1.0.1">
                    <praxisnachweis>
                        <kundennummer>773064</kundennummer>
                        <gebaeude_name>Gewerbezentrum Nord</gebaeude_name>
                        <leistungsnachweistyp>6</leistungsnachweistyp>
                        <verlaengerungsgrund>1</verlaengerungsgrund>
                        <foerderung_kfw>1</foerderung_kfw>
                        <denkmalschutz>0</denkmalschutz>
                        <gueltigkeit_pnw_jahr>2016</gueltigkeit_pnw_jahr>
                        <gueltigkeit_pnw_monat>5</gueltigkeit_pnw_monat>
                    </praxisnachweis>
                    <basisangaben>
                        <effizienzhausniveau>30</effizienzhausniveau>
                        <art_bauvorhaben>3</art_bauvorhaben>
                        <gebaeude_plz>12345</gebaeude_plz>
                        <gebaeude_ort>Musterstadt</gebaeude_ort>
                        <gebaeude_baujahr>1999</gebaeude_baujahr>
                        <nachweisverfahren>5</nachweisverfahren>
                        <gebaeude_volumen_beheizt>3456</gebaeude_volumen_beheizt>
                        <gebaeude_umfassungsflaeche>2342</gebaeude_umfassungsflaeche>
                        <gebaeude_nutzflaeche>66578</gebaeude_nutzflaeche>
                        <gebaeude_breite>12</gebaeude_breite>
                        <gebaeude_laenge>45</gebaeude_laenge>
                        <geschosshoehe>3</geschosshoehe>
                        <geschossanzahl>4</geschossanzahl>
                        <berechnungsmethode>4</berechnungsmethode>
                        <software>GeDaTrans</software>
                        <uwert_opak_19>0.047</uwert_opak_19>
                        <uwert_transparent_19/>
                        <uwert_lichtkuppel_19/>
                        <uwert_opak_12/>
                        <uwert_transparent_12/>
                        <uwert_lichtkuppel_12/>
                        <flaeche_oberer_abschluss>4517</flaeche_oberer_abschluss>
                        <flaeche_unterer_abschluss>4785</flaeche_unterer_abschluss>
                    </basisangaben>
                    <energieeffizienzangaben>
                        <jahresprimaerenergiebedarf>
                            <qp_ref>68.7</qp_ref>
                            <qp>70</qp>
                        </jahresprimaerenergiebedarf>
                        <heizung_nutzenergiebedarf>325</heizung_nutzenergiebedarf>
                        <heizung_nutzenergiebedarf_ref/>
                        <heizung_erzeugernutzenergieabgabe>475</heizung_erzeugernutzenergieabgabe>
                        <heizung_erzeugernutzenergieabgabe_ref/>
                        <heizung_endenergiebedarf>490</heizung_endenergiebedarf>
                        <heizung_endenergiebedarf_ref/>
                        <heizung_primaerenergiebedarf>12</heizung_primaerenergiebedarf>
                        <heizung_primaerenergiebedarf_ref/>
                        <kuehlung_nutzenergiebedarf>123</kuehlung_nutzenergiebedarf>
                        <kuehlung_nutzenergiebedarf_ref/>
                        <kuehlung_erzeugernutzenergieabgabe/>
                        <kuehlung_erzeugernutzenergieabgabe_ref/>
                        <kuehlung_endenergiebedarf>61</kuehlung_endenergiebedarf>
                        <kuehlung_endenergiebedarf_ref/>
                        <kuehlung_primaerenergiebedarf>34</kuehlung_primaerenergiebedarf>
                        <kuehlung_primaerenergiebedarf_ref/>
                        <belueftung_nutzenergiebedarf/>
                        <belueftung_nutzenergiebedarf_ref/>
                        <belueftung_erzeugernutzenergieabgabe/>
                        <belueftung_erzeugernutzenergieabgabe_ref/>
                        <belueftung_endenergiebedarf>20</belueftung_endenergiebedarf>
                        <belueftung_endenergiebedarf_ref/>
                        <belueftung_primaerenergiebedarf>48</belueftung_primaerenergiebedarf>
                        <belueftung_primaerenergiebedarf_ref/>
                        <trinkwarmwasser_nutzenergiebedarf>54</trinkwarmwasser_nutzenergiebedarf>
                        <trinkwarmwasser_nutzenergiebedarf_ref/>
                        <trinkwarmwasser_erzeugernutzenergieabgabe>98</trinkwarmwasser_erzeugernutzenergieabgabe>
                        <trinkwarmwasser_erzeugernutzenergieabgabe_ref/>
                        <trinkwarmwasser_endenergiebedarf>98</trinkwarmwasser_endenergiebedarf>
                        <trinkwarmwasser_endenergiebedarf_ref/>
                        <trinkwarmwasser_primaerenergiebedarf>34</trinkwarmwasser_primaerenergiebedarf>
                        <trinkwarmwasser_primaerenergiebedarf_ref/>
                        <beleuchtung_nutzenergiebedarf>5</beleuchtung_nutzenergiebedarf>
                        <beleuchtung_nutzenergiebedarf_ref/>
                        <beleuchtung_endenergiebedarf>3.31</beleuchtung_endenergiebedarf>
                        <beleuchtung_endenergiebedarf_ref/>
                        <beleuchtung_primaerenergiebedarf>8</beleuchtung_primaerenergiebedarf>
                        <beleuchtung_primaerenergiebedarf_ref/>
                        <strom_erneuerbar_abzug_endenergiebedarf/>
                        <strom_erneuerbar_abzug_primaerenergiebedarf/>
                        <endenergie_heizung_hilfsstrom>3223</endenergie_heizung_hilfsstrom>
                        <endenergie_heizung_heizoel>435</endenergie_heizung_heizoel>
                        <endenergie_heizung_heizoel_biooel_gemisch/>
                        <endenergie_heizung_biooel/>
                        <endenergie_heizung_erdgas_h/>
                        <endenergie_heizung_erdgas_biogas_gemisch/>
                        <endenergie_heizung_biogas/>
                        <endenergie_heizung_fluessiggas/>
                        <endenergie_heizung_steinkohle/>
                        <endenergie_heizung_braunkohle/>
                        <endenergie_heizung_holz/>
                        <endenergie_heizung_heizwerk_fossil/>
                        <endenergie_heizung_heizwerk_erneuerbar/>
                        <endenergie_heizung_kwk_fossil/>
                        <endenergie_heizung_kwk_erneuerbar/>
                        <endenergie_heizung_strommix/>
                        <endenergie_heizung_solarenergie/>
                        <endenergie_heizung_geothermie/>
                        <endenergie_heizung_umgebungswaerme/>
                        <endenergie_heizung_prozessabwaerme/>
                        <endenergie_kuehlung_erdgas_h>243</endenergie_kuehlung_erdgas_h>
                        <endenergie_kuehlung_strommix/>
                        <endenergie_kuehlung_solarenergie/>
                        <endenergie_kuehlung_geothermie/>
                        <endenergie_kuehlung_umgebungskaelte/>
                        <endenergie_kuehlung_prozessabwaerme/>
                        <endenergie_kuehlung_hilfsstrom/>
                        <endenergie_belueftung_hilfsstrom/>
                        <endenergie_belueftung_strommix>234</endenergie_belueftung_strommix>
                        <endenergie_trinkwarmwasser_heizoel/>
                        <endenergie_trinkwarmwasser_heizoel_biooel_gemisch>234</endenergie_trinkwarmwasser_heizoel_biooel_gemisch>
                        <endenergie_trinkwarmwasser_biooel/>
                        <endenergie_trinkwarmwasser_erdgas_h/>
                        <endenergie_trinkwarmwasser_erdgas_biogas_gemisch/>
                        <endenergie_trinkwarmwasser_biogas/>
                        <endenergie_trinkwarmwasser_fluessiggas/>
                        <endenergie_trinkwarmwasser_steinkohle/>
                        <endenergie_trinkwarmwasser_braunkohle/>
                        <endenergie_trinkwarmwasser_holz/>
                        <endenergie_trinkwarmwasser_heizwerk_fossil/>
                        <endenergie_trinkwarmwasser_heizwerk_erneuerbar/>
                        <endenergie_trinkwarmwasser_kwk_fossil/>
                        <endenergie_trinkwarmwasser_kwk_erneuerbar/>
                        <endenergie_trinkwarmwasser_strommix/>
                        <endenergie_trinkwarmwasser_solarenergie/>
                        <endenergie_trinkwarmwasser_geothermie/>
                        <endenergie_trinkwarmwasser_umgebungswaerme/>
                        <endenergie_trinkwarmwasser_prozessabwaerme/>
                        <endenergie_trinkwarmwasser_hilfsstrom/>
                        <endenergie_beleuchtung_hilfsstrom/>
                        <endenergie_beleuchtung_strommix>1234</endenergie_beleuchtung_strommix>
                        <ergebnis_luftdichtheitstest/>
                    </energieeffizienzangaben>
                    <anlagentechnik>
                        <heizung>
                            <anlagensystem_erzeuger_heizung_1>20</anlagensystem_erzeuger_heizung_1>
                            <energietraeger_heizung_1>12</energietraeger_heizung_1>
                            <fp_heizung_1/>
                            <anlagensystem_erzeuger_heizung_2/>
                            <energietraeger_heizung_2/>
                            <fp_heizung_2/>
                            <anlagensystem_erzeuger_heizung_3/>
                            <energietraeger_heizung_3/>
                            <fp_heizung_3/>
                        </heizung>
                        <trinkwarmwasser>
                            <anlagensystem_erzeuger_warmwasser_1>121</anlagensystem_erzeuger_warmwasser_1>
                            <energietraeger_warmwasser_1>110</energietraeger_warmwasser_1>
                            <fp_warmwasser_1/>
                            <anlagensystem_erzeuger_warmwasser_2>90</anlagensystem_erzeuger_warmwasser_2>
                            <energietraeger_warmwasser_2>130</energietraeger_warmwasser_2>
                            <fp_warmwasser_2/>
                            <anlagensystem_erzeuger_warmwasser_3/>
                            <energietraeger_warmwasser_3/>
                            <fp_warmwasser_3/>
                        </trinkwarmwasser>
                        <lueftung>
                            <anlagensystem_lueftung_1>40</anlagensystem_lueftung_1>
                            <waermerueckgewinnungsgrad_lueftung_1>45</waermerueckgewinnungsgrad_lueftung_1>
                            <anlagensystem_lueftung_1_register>10</anlagensystem_lueftung_1_register>
                            <anlagensystem_lueftung_2>10</anlagensystem_lueftung_2>
                            <waermerueckgewinnungsgrad_lueftung_2/>
                            <anlagensystem_lueftung_2_register>10</anlagensystem_lueftung_2_register>
                            <anlagensystem_lueftung_3>10</anlagensystem_lueftung_3>
                            <waermerueckgewinnungsgrad_lueftung_3/>
                            <anlagensystem_lueftung_3_register>10</anlagensystem_lueftung_3_register>
                        </lueftung>
                        <kuehlung>
                            <anlagensystem_kuehlung_1>30</anlagensystem_kuehlung_1>
                            <anlagensystem_kuehlung_2>10</anlagensystem_kuehlung_2>
                            <anlagensystem_kuehlung_3>10</anlagensystem_kuehlung_3>
                        </kuehlung>
                        <erneuerbarer_strom>
                            <erzeuger>
                                <typ>20</typ>
                                <typ>30</typ>
                            </erzeuger>
                            <erzeuger_sonstige>BHKW</erzeuger_sonstige>
                            <strombedarf>
                                <m_1>12350</m_1>
                                <m_2>12350</m_2>
                                <m_3>12350</m_3>
                                <m_4>12350</m_4>
                                <m_5>0</m_5>
                                <m_6>0</m_6>
                                <m_7>0</m_7>
                                <m_8>0</m_8>
                                <m_9>0</m_9>
                                <m_10>0</m_10>
                                <m_11>0</m_11>
                                <m_12>0</m_12>
                            </strombedarf>
                            <stromertrag_pv>
                                <m_1>0</m_1>
                                <m_2>0</m_2>
                                <m_3>0</m_3>
                                <m_4>0</m_4>
                                <m_5>0</m_5>
                                <m_6>0</m_6>
                                <m_7>0</m_7>
                                <m_8>0</m_8>
                                <m_9>0</m_9>
                                <m_10>0</m_10>
                                <m_11>0</m_11>
                                <m_12>0</m_12>
                            </stromertrag_pv>
                            <stromertrag_sonstige>
                                <m_1>354</m_1>
                                <m_2>0</m_2>
                                <m_3>0</m_3>
                                <m_4>0</m_4>
                                <m_5>0</m_5>
                                <m_6>0</m_6>
                                <m_7>0</m_7>
                                <m_8>0</m_8>
                                <m_9>0</m_9>
                                <m_10>0</m_10>
                                <m_11>0</m_11>
                                <m_12>0</m_12>
                            </stromertrag_sonstige>
                            <stromertrag_wka>
                                <m_1>1200</m_1>
                                <m_2>1200</m_2>
                                <m_3>0</m_3>
                                <m_4>0</m_4>
                                <m_5>0</m_5>
                                <m_6>0</m_6>
                                <m_7>0</m_7>
                                <m_8>0</m_8>
                                <m_9>0</m_9>
                                <m_10>0</m_10>
                                <m_11>0</m_11>
                                <m_12>0</m_12>
                            </stromertrag_wka>
                            <betrag_anrechnung>
                                <m_1>1554</m_1>
                                <m_2>1200</m_2>
                                <m_3>0</m_3>
                                <m_4>0</m_4>
                                <m_5>0</m_5>
                                <m_6>0</m_6>
                                <m_7>0</m_7>
                                <m_8>0</m_8>
                                <m_9>0</m_9>
                                <m_10>0</m_10>
                                <m_11>0</m_11>
                                <m_12>0</m_12>
                            </betrag_anrechnung>
                        </erneuerbarer_strom>
                    </anlagentechnik>
                    <zonierung>
                        <zone>
                            <bezeichnung>Gewerbe 1</bezeichnung>
                            <ngf_absolut>456</ngf_absolut>
                            <huellflaeche>45645</huellflaeche>
                            <luftvolumen_vi>4564</luftvolumen_vi>
                            <nutzungsprofil>6</nutzungsprofil>
                            <waermebrueckenzuschlag>2</waermebrueckenzuschlag>
                            <detaillierter_waermebrueckenverlust/>
                            <luftdichtheitskategorie>4</luftdichtheitskategorie>
                            <heizung_nutzenergiebedarf>160</heizung_nutzenergiebedarf>
                            <heizung_nutzenergiebedarf_ref/>
                            <heizung_endenergiebedarf>38</heizung_endenergiebedarf>
                            <heizung_endenergiebedarf_ref/>
                            <heizung_primaerenergiebedarf>47</heizung_primaerenergiebedarf>
                            <heizung_primaerenergiebedarf_ref/>
                            <heizung_erzeugernutzenergieabgabe>154</heizung_erzeugernutzenergieabgabe>
                            <heizung_erzeugernutzenergieabgabe_ref/>
                            <kuehlung_nutzenergiebedarf>356</kuehlung_nutzenergiebedarf>
                            <kuehlung_nutzenergiebedarf_ref/>
                            <kuehlung_endenergiebedarf>353</kuehlung_endenergiebedarf>
                            <kuehlung_endenergiebedarf_ref/>
                            <kuehlung_primaerenergiebedarf>24</kuehlung_primaerenergiebedarf>
                            <kuehlung_primaerenergiebedarf_ref/>
                            <kuehlung_erzeugernutzenergieabgabe>131</kuehlung_erzeugernutzenergieabgabe>
                            <kuehlung_erzeugernutzenergieabgabe_ref/>
                            <belueftung_nutzenergiebedarf>453</belueftung_nutzenergiebedarf>
                            <belueftung_nutzenergiebedarf_ref/>
                            <belueftung_endenergiebedarf>123</belueftung_endenergiebedarf>
                            <belueftung_endenergiebedarf_ref/>
                            <belueftung_primaerenergiebedarf>321</belueftung_primaerenergiebedarf>
                            <belueftung_primaerenergiebedarf_ref/>
                            <belueftung_erzeugernutzenergieabgabe>231</belueftung_erzeugernutzenergieabgabe>
                            <belueftung_erzeugernutzenergieabgabe_ref/>
                            <trinkwarmwasser_nutzenergiebedarf>234</trinkwarmwasser_nutzenergiebedarf>
                            <trinkwarmwasser_nutzenergiebedarf_ref/>
                            <trinkwarmwasser_endenergiebedarf>123</trinkwarmwasser_endenergiebedarf>
                            <trinkwarmwasser_endenergiebedarf_ref/>
                            <trinkwarmwasser_primaerenergiebedarf>531</trinkwarmwasser_primaerenergiebedarf>
                            <trinkwarmwasser_primaerenergiebedarf_ref/>
                            <trinkwarmwasser_erzeugernutzenergieabgabe>453</trinkwarmwasser_erzeugernutzenergieabgabe>
                            <trinkwarmwasser_erzeugernutzenergieabgabe_ref/>
                            <beleuchtung_nutzenergiebedarf>399</beleuchtung_nutzenergiebedarf>
                            <beleuchtung_nutzenergiebedarf_ref/>
                            <beleuchtung_endenergiebedarf>354</beleuchtung_endenergiebedarf>
                            <beleuchtung_endenergiebedarf_ref/>
                            <beleuchtung_primaerenergiebedarf>174</beleuchtung_primaerenergiebedarf>
                            <beleuchtung_primaerenergiebedarf_ref/>
                        </zone>
                        <zone>
                            <bezeichnung>Verwaltung</bezeichnung>
                            <ngf_absolut>4564</ngf_absolut>
                            <huellflaeche>6456</huellflaeche>
                            <luftvolumen_vi>4656</luftvolumen_vi>
                            <nutzungsprofil>2</nutzungsprofil>
                            <waermebrueckenzuschlag>4</waermebrueckenzuschlag>
                            <detaillierter_waermebrueckenverlust>0.01</detaillierter_waermebrueckenverlust>
                            <luftdichtheitskategorie>3</luftdichtheitskategorie>
                            <heizung_nutzenergiebedarf>160</heizung_nutzenergiebedarf>
                            <heizung_nutzenergiebedarf_ref/>
                            <heizung_endenergiebedarf>38</heizung_endenergiebedarf>
                            <heizung_endenergiebedarf_ref/>
                            <heizung_primaerenergiebedarf>47</heizung_primaerenergiebedarf>
                            <heizung_primaerenergiebedarf_ref/>
                            <heizung_erzeugernutzenergieabgabe>154</heizung_erzeugernutzenergieabgabe>
                            <heizung_erzeugernutzenergieabgabe_ref/>
                            <kuehlung_nutzenergiebedarf>356</kuehlung_nutzenergiebedarf>
                            <kuehlung_nutzenergiebedarf_ref/>
                            <kuehlung_endenergiebedarf>353</kuehlung_endenergiebedarf>
                            <kuehlung_endenergiebedarf_ref/>
                            <kuehlung_primaerenergiebedarf>24</kuehlung_primaerenergiebedarf>
                            <kuehlung_primaerenergiebedarf_ref/>
                            <kuehlung_erzeugernutzenergieabgabe>131</kuehlung_erzeugernutzenergieabgabe>
                            <kuehlung_erzeugernutzenergieabgabe_ref/>
                            <belueftung_nutzenergiebedarf>453</belueftung_nutzenergiebedarf>
                            <belueftung_nutzenergiebedarf_ref/>
                            <belueftung_endenergiebedarf>123</belueftung_endenergiebedarf>
                            <belueftung_endenergiebedarf_ref/>
                            <belueftung_primaerenergiebedarf>321</belueftung_primaerenergiebedarf>
                            <belueftung_primaerenergiebedarf_ref/>
                            <belueftung_erzeugernutzenergieabgabe>231</belueftung_erzeugernutzenergieabgabe>
                            <belueftung_erzeugernutzenergieabgabe_ref/>
                            <trinkwarmwasser_nutzenergiebedarf>234</trinkwarmwasser_nutzenergiebedarf>
                            <trinkwarmwasser_nutzenergiebedarf_ref/>
                            <trinkwarmwasser_endenergiebedarf>123</trinkwarmwasser_endenergiebedarf>
                            <trinkwarmwasser_endenergiebedarf_ref/>
                            <trinkwarmwasser_primaerenergiebedarf>531</trinkwarmwasser_primaerenergiebedarf>
                            <trinkwarmwasser_primaerenergiebedarf_ref/>
                            <trinkwarmwasser_erzeugernutzenergieabgabe>453</trinkwarmwasser_erzeugernutzenergieabgabe>
                            <trinkwarmwasser_erzeugernutzenergieabgabe_ref/>
                            <beleuchtung_nutzenergiebedarf>399</beleuchtung_nutzenergiebedarf>
                            <beleuchtung_nutzenergiebedarf_ref/>
                            <beleuchtung_endenergiebedarf>354</beleuchtung_endenergiebedarf>
                            <beleuchtung_endenergiebedarf_ref/>
                            <beleuchtung_primaerenergiebedarf>174</beleuchtung_primaerenergiebedarf>
                            <beleuchtung_primaerenergiebedarf_ref/>
                        </zone>
                    </zonierung>
                </gedatrans>
            
        

Schema (xsd)

            
                <?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           attributeFormDefault="unqualified"
           elementFormDefault="qualified"
           version="1.0.1">

    <xs:element name="gedatrans" type="gedatransType"/>

    <xs:complexType name="gedatransType">
        <xs:all>
            <xs:element name="praxisnachweis" type="praxisnachweisType" minOccurs="0" maxOccurs="1" />

            <xs:element name="basisangaben" type="basisangabenType" minOccurs="0" maxOccurs="1" />

            <xs:element name="energieeffizienzangaben" type="energieeffizienzangabenType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagentechnik" type="anlagentechnikType" minOccurs="0" maxOccurs="1" />

            <xs:element name="zonierung" type="zonierungType" minOccurs="0" maxOccurs="1" />
        </xs:all>

        <xs:attribute ref="version" use="required" />
    </xs:complexType>

    <xs:complexType name="praxisnachweisType">
        <xs:all>
            <xs:element name="kundennummer" type="positiveIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_name" type="gebaeude_nameType" minOccurs="0" maxOccurs="1" />

            <xs:element name="verlaengerungsgrund" type="verlaengerungsgrundType" minOccurs="0" maxOccurs="1" />

            <xs:element name="foerderung_kfw" type="booleanOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="denkmalschutz" type="booleanOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="gueltigkeit_pnw_jahr" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Jahr, in dem alle erforderlichen Leistungen zur Erstellung des Praxisnachweis erbracht worden sind.
                        ]]>
                    </xs:documentation>
                </xs:annotation>
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:gYear"/>
                </xs:simpleType>
            </xs:element>

            <xs:element name="gueltigkeit_pnw_monat" type="gueltigkeit_pnw_monatType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            Monat des Jahres, in dem alle erforderlichen Leistungen zur Erstellung des Praxisnachweis erbracht worden sind.
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:all>
    </xs:complexType>

    <xs:complexType name="basisangabenType">
        <xs:all>
            <xs:element name="effizienzhausniveau" type="effizienzhausniveauType" minOccurs="0" maxOccurs="1" />

            <xs:element name="art_bauvorhaben" type="art_bauvorhabenType" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_plz" minOccurs="0" maxOccurs="1">
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:string"/>
                </xs:simpleType>
            </xs:element>

            <xs:element name="gebaeude_ort" type="stringOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_baujahr" minOccurs="0" maxOccurs="1">
                <xs:simpleType>
                    <xs:union memberTypes="emptyValue xs:gYear"/>
                </xs:simpleType>
            </xs:element>

            <xs:element name="nachweisverfahren" type="nachweisverfahrenType" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_volumen_beheizt" type="gebaeude_volumen_beheiztType" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_umfassungsflaeche" type="gebaeude_umfassungsflaecheType" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_nutzflaeche" type="gebaeude_nutzflaecheType" minOccurs="0" maxOccurs="1" />

            <xs:element name="gebaeude_breite" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            Charakteristische Breite des Gesamtgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="gebaeude_laenge" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            Charakteristische Länge des Gesamtgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="geschosshoehe" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="geschossanzahl" type="positiveIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="berechnungsmethode" type="berechnungsmethodeType" minOccurs="0" maxOccurs="1" />

            <xs:element name="software" type="stringOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Verwendete Berechnungssoftware
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_opak_19" type="uwert_opak_19Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für opake Außenbauteile des Gebäudes (T>=19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_transparent_19" type="uwert_transparent_19Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für transparente Außenbauteile und Vorhangfassade des Gebäudes (T>=19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_lichtkuppel_19" type="uwert_lichtkuppel_19Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für Lichtkuppeln des Gebäudes (T>=19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_opak_12" type="uwert_opak_12Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für opake Außenbauteile des Gebäudes (12°C<T<19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_transparent_12" type="uwert_transparent_12Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für transparente Außenbauteile und Vorhangfassade des Gebäudes (12°C<T<19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="uwert_lichtkuppel_12" type="uwert_lichtkuppel_12Type" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            gemäß EnEV berechneten Wärmedurchgangskoeffizienten für Lichtkuppeln des Gebäudes (12°C<T<19°C)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="flaeche_oberer_abschluss" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            Hüllfläche des oberen Gebäudeabschluss (inkl. transparenter Bauteile)
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="flaeche_unterer_abschluss" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                            Hüllfläche des unteren Gebäudeabschluss
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:all>
    </xs:complexType>

    <xs:complexType name="energieeffizienzangabenType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                    Die Eingabe in die Tabelle "Spezifischer Energiebedarf je Gewerk in kWh/(m²a)" erfolgt stets ohne die Einbeziehung von selbst erzeugtem Strom.<br>
                    Dieser Anteil ist separat anzugeben unter <erneuerbarer_strom></erneuerbarer_strom>.
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:all>
            <xs:element name="jahresprimaerenergiebedarf" type="jahresprimaerenergiebedarfType" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_nutzenergiebedarf" type="nutzenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Heizung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Heizung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_erzeugernutzenergieabgabe" type="erzeugernutzenergieabgabeType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Heizung (in kWh/(m²a)), optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Heizung (in kWh/(m²a)) des Referenzgebäudes, optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Heizung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Heizung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Heizung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="heizung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Heizung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="kuehlung_nutzenergiebedarf" type="nutzenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Kühlung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Kühlung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_erzeugernutzenergieabgabe" type="erzeugernutzenergieabgabeType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Kühlung (in kWh/(m²a)), optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Kühlung (in kWh/(m²a)) des Referenzgebäudes, optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Kühlung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Kühlung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Kühlung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="kuehlung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Kühlung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="belueftung_nutzenergiebedarf" type="nutzenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Belüftung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Belüftung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_erzeugernutzenergieabgabe" type="erzeugernutzenergieabgabeType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Belüftung (in kWh/(m²a)), optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe der Belüftung (in kWh/(m²a)) des Referenzgebäudes, optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Belüftung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Belüftung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Belüftung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="belueftung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Belüftung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="trinkwarmwasser_nutzenergiebedarf" type="nutzenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf für Trinkwarmwasser (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf für Trinkwarmwasser (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_erzeugernutzenergieabgabe" type="erzeugernutzenergieabgabeType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe für Trinkwarmwasser (in kWh/(m²a)), optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifische Erzeugernutzenergieabgabe für Trinkwarmwasser (in kWh/(m²a)) des Referenzgebäudes, optional
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf für Trinkwarmwasser (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf für Trinkwarmwasser (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf für Trinkwarmwasser (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="trinkwarmwasser_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf für Trinkwarmwasser (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="beleuchtung_nutzenergiebedarf" type="nutzenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Beleuchtung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="beleuchtung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Nutzenergiebedarf der Beleuchtung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="beleuchtung_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Beleuchtung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="beleuchtung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf der Beleuchtung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="beleuchtung_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Beleuchtung (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="beleuchtung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf der Beleuchtung (in kWh/(m²a)) des Referenzgebäudes
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="strom_erneuerbar_abzug_endenergiebedarf" type="endenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Endenergiebedarf für Strom aus erneuerbaren Energien als Abzug (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
            <xs:element name="strom_erneuerbar_abzug_primaerenergiebedarf" type="primaerenergiebedarfType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf für Strom aus erneuerbaren Energien als Abzug (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="endenergie_heizung_hilfsstrom" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_heizoel" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_heizoel_biooel_gemisch" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_biooel" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_erdgas_h" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_erdgas_biogas_gemisch" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_biogas" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_fluessiggas" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_steinkohle" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_braunkohle" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_holz" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_heizwerk_fossil" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_heizwerk_erneuerbar" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_kwk_fossil" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_kwk_erneuerbar" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_strommix" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_solarenergie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_geothermie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_umgebungswaerme" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_heizung_prozessabwaerme" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="endenergie_kuehlung_hilfsstrom" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_strommix" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_solarenergie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_geothermie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_umgebungskaelte" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_prozessabwaerme" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_kuehlung_erdgas_h" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="endenergie_belueftung_hilfsstrom" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_belueftung_strommix" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="endenergie_trinkwarmwasser_hilfsstrom" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_heizoel" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_heizoel_biooel_gemisch" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_biooel" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_erdgas_h" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_erdgas_biogas_gemisch" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_biogas" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_fluessiggas" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_steinkohle" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_braunkohle" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_holz" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_heizwerk_fossil" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_heizwerk_erneuerbar" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_kwk_fossil" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_kwk_erneuerbar" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_strommix" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_solarenergie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_geothermie" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_umgebungswaerme" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_trinkwarmwasser_prozessabwaerme" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="endenergie_beleuchtung_hilfsstrom" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />
            <xs:element name="endenergie_beleuchtung_strommix" type="nonNegativeIntegerOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="ergebnis_luftdichtheitstest" type="realOrEmpty" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnikType">
        <xs:all>
            <xs:element name="heizung" type="anlagentechnik_heizungType" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser" type="anlagentechnik_trinkwarmwasserType" minOccurs="0" maxOccurs="1" />

            <xs:element name="lueftung" type="anlagentechnik_lueftungType" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung" type="anlagentechnik_kuehlungType" minOccurs="0" maxOccurs="1" />

            <xs:element name="erneuerbarer_strom" type="anlagentechnik_erneuerbarer_stromType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="zonierungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Auflistung der Gebäudezonen.<br/><br/>
                Angabe von max. 20 Zonen.<br/>
                Wenn mehr als 20 Zonen vorhanden sind, entsprechend der größten NGF sortiert angeben.<br>
                <br>
                Im Vereinfachten Verfahren (Ein-Zonen-Modell) ist auch die Angabe von nur einer Zone möglich.
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:sequence>
            <xs:element name="zone" type="zoneType" maxOccurs="20" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="jahresprimaerenergiebedarfType">
        <xs:all>
            <xs:element name="qp_ref" type="jpeb_qp_refType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf des Referenzgebäudes (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>

            <xs:element name="qp" type="jpeb_qpType" minOccurs="0" maxOccurs="1">
                <xs:annotation>
                    <xs:documentation>
                        <![CDATA[
                        Spezifischer Primärenergiebedarf des Gebäudes (in kWh/(m²a))
                        ]]>
                    </xs:documentation>
                </xs:annotation>
            </xs:element>
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_heizungType">
        <xs:all>
            <xs:element name="anlagensystem_erzeuger_heizung_1" type="anlagensystem_erzeuger_heizungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_heizung_1" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_heizung_1" type="fpType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_erzeuger_heizung_2" type="anlagensystem_erzeuger_heizungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_heizung_2" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_heizung_2" type="fpType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_erzeuger_heizung_3" type="anlagensystem_erzeuger_heizungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_heizung_3" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_heizung_3" type="fpType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_trinkwarmwasserType">
        <xs:all>
            <xs:element name="anlagensystem_erzeuger_warmwasser_1" type="anlagensystem_erzeuger_warmwasserType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_warmwasser_1" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_warmwasser_1" type="fpType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_erzeuger_warmwasser_2" type="anlagensystem_erzeuger_warmwasserType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_warmwasser_2" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_warmwasser_2" type="fpType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_erzeuger_warmwasser_3" type="anlagensystem_erzeuger_warmwasserType" minOccurs="0" maxOccurs="1" />
            <xs:element name="energietraeger_warmwasser_3" type="energietraeger_erzeugerType" minOccurs="0" maxOccurs="1" />
            <xs:element name="fp_warmwasser_3" type="fpType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_lueftungType">
        <xs:all>
            <xs:element name="anlagensystem_lueftung_1" type="anlagensystem_lueftungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="waermerueckgewinnungsgrad_lueftung_1" type="waermerueckgewinnungsgradType" minOccurs="0" maxOccurs="1" />
            <xs:element name="anlagensystem_lueftung_1_register" type="anlagensystem_lueftung_registerType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_lueftung_2" type="anlagensystem_lueftungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="waermerueckgewinnungsgrad_lueftung_2" type="waermerueckgewinnungsgradType" minOccurs="0" maxOccurs="1" />
            <xs:element name="anlagensystem_lueftung_2_register" type="anlagensystem_lueftung_registerType" minOccurs="0" maxOccurs="1" />

            <xs:element name="anlagensystem_lueftung_3" type="anlagensystem_lueftungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="waermerueckgewinnungsgrad_lueftung_3" type="waermerueckgewinnungsgradType" minOccurs="0" maxOccurs="1" />
            <xs:element name="anlagensystem_lueftung_3_register" type="anlagensystem_lueftung_registerType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_kuehlungType">
        <xs:all>
            <xs:element name="anlagensystem_kuehlung_1" type="anlagensystem_kuehlungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="anlagensystem_kuehlung_2" type="anlagensystem_kuehlungType" minOccurs="0" maxOccurs="1" />
            <xs:element name="anlagensystem_kuehlung_3" type="anlagensystem_kuehlungType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="zoneType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Struktur einer einzelnen Zone<br/>
                <br/>
                Die Energiekennwerte für die unterschiedlichen Gewerke sind jeweils als absolute Werte anzugeben.

                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:all>
            <xs:element name="bezeichnung" type="stringOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="ngf_absolut" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="huellflaeche" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="luftvolumen_vi" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="nutzungsprofil" type="zone_nutzungsprofilType" minOccurs="0" maxOccurs="1" />

            <xs:element name="waermebrueckenzuschlag" type="zone_waermebrueckenzuschlagType" minOccurs="0" maxOccurs="1" />

            <xs:element name="detaillierter_waermebrueckenverlust" type="zone_waermebrueckenverlust_detailliertType" minOccurs="0" maxOccurs="1" />

            <xs:element name="luftdichtheitskategorie" type="zone_luftdichtheitskategorieType" minOccurs="0" maxOccurs="1" />

            <!-- Heizung -->
            <xs:element name="heizung_nutzenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_endenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_primaerenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_erzeugernutzenergieabgabe" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="heizung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <!-- Kuehlung -->
            <xs:element name="kuehlung_nutzenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_endenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_primaerenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_erzeugernutzenergieabgabe" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="kuehlung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <!-- Belueftung -->
            <xs:element name="belueftung_nutzenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_endenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_primaerenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_erzeugernutzenergieabgabe" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="belueftung_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <!-- Trinkwarmwasser -->
            <xs:element name="trinkwarmwasser_nutzenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_endenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_primaerenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_erzeugernutzenergieabgabe" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="trinkwarmwasser_erzeugernutzenergieabgabe_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <!-- Beleuchtung -->
            <xs:element name="beleuchtung_nutzenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="beleuchtung_nutzenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="beleuchtung_endenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="beleuchtung_endenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="beleuchtung_primaerenergiebedarf" type="realOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="beleuchtung_primaerenergiebedarf_ref" type="realOrEmpty" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_erneuerbarer_stromType">
        <xs:all>
            <xs:element name="erzeuger" type="anlagentechnik_erneuerbarer_strom_erzeuger_typenType" minOccurs="0" maxOccurs="1" />

            <xs:element name="erzeuger_sonstige" type="stringOrEmpty" minOccurs="0" maxOccurs="1" />

            <xs:element name="stromertrag_pv" type="anlagentechnik_erneuerbarer_strom_jahreswerteType" minOccurs="0" maxOccurs="1" />

            <xs:element name="stromertrag_wka" type="anlagentechnik_erneuerbarer_strom_jahreswerteType" minOccurs="0" maxOccurs="1" />

            <xs:element name="stromertrag_sonstige" type="anlagentechnik_erneuerbarer_strom_jahreswerteType" minOccurs="0" maxOccurs="1" />

            <xs:element name="strombedarf" type="anlagentechnik_erneuerbarer_strom_jahreswerteType" minOccurs="0" maxOccurs="1" />

            <xs:element name="betrag_anrechnung" type="anlagentechnik_erneuerbarer_strom_jahreswerteType" minOccurs="0" maxOccurs="1" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_erneuerbarer_strom_erzeuger_typenType">
        <xs:sequence>
            <xs:element name="typ" type="anlagentechnik_erneuerbarer_strom_erzeugerType" minOccurs="0" maxOccurs="7" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="anlagentechnik_erneuerbarer_strom_jahreswerteType">
        <xs:all>
            <xs:element name="m_1" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_2" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_3" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_4" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_5" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_6" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_7" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_8" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_9" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_10" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_11" type="realOrEmpty" minOccurs="1" />
            <xs:element name="m_12" type="realOrEmpty" minOccurs="1" />
        </xs:all>
    </xs:complexType>

    <!-- BEGIN validation types -->
    <xs:simpleType name="gebaeude_nameType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:maxLength value="50"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="verlaengerungsgrundType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Verlängerungsgründe sind durch GeDaTrans-NWG möglich:<br />
                1 - Nichtwohngebäude<br />
                2 - Wohngebäude
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="2"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gueltigkeit_pnw_monatType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="12"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="effizienzhausniveauType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Definiert die Art des Effizienzhausniveaus.<br />
                10 - Effizienzhaus 40<br />
                20 - Effizienzhaus 55<br />
                30 - Effizienzhaus 70<br />
                40 - Effizienzhaus 100<br />
                50 - Effizienzhaus Denkmal<br />
                60 - Effizienzhaus 40 EE<br />
                70 - Effizienzhaus 55 EE<br />
                80 - Effizienzhaus 40 NH<br />
                90 - Effizienzhaus 55 NH<br />
                100 - Effizienzhaus 70 EE<br />
                110 - Effizienzhaus 70 NH<br />
                120 - Effizienzhaus 100 EE<br />
                130 - Effizienzhaus 100 NH<br />
                140 - Effizienzhaus Denkmal EE<br />
                150 - Effizienzhaus Denkmal NH
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10"/>
                    <xs:enumeration value="20"/>
                    <xs:enumeration value="30"/>
                    <xs:enumeration value="40"/>
                    <xs:enumeration value="50"/>
                    <xs:enumeration value="60"/>
                    <xs:enumeration value="70"/>
                    <xs:enumeration value="80"/>
                    <xs:enumeration value="90"/>
                    <xs:enumeration value="100"/>
                    <xs:enumeration value="110"/>
                    <xs:enumeration value="120"/>
                    <xs:enumeration value="130"/>
                    <xs:enumeration value="140"/>
                    <xs:enumeration value="150"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="art_bauvorhabenType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Definiert die Art des Bauvorhabens.<br />
                1 - Neubau<br />
                3 - Sanierung
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1"/>
                    <xs:maxInclusive value="3"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="nachweisverfahrenType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Beschreibung des Nachweisverfahrens<br />
                1 - EnEV 2009<br />
                3 - EnEV 2009 zzgl. KfW-Spezifikationen<br />
                4 - EnEV 2014<br />
                5 - EnEV 2014 zzgl. KfW-Spezifikationen<br />
                6 - EnEV 2014 (verschärfte Anf.)<br />
                7 - EnEV 2014 (verschärfte Anf.) zzgl. KfW-Spezifikationen<br>
                8 - GEG (2020)
                <br /><br />
                Vereinfachtes Verfahren (Ein-Zonen-Modell)<br />
                10 - EnEV 2009 (Vereinf. Verfahren)<br />
                11 - EnEV 2009 (Vereinf. Verfahren) zzgl. KfW-Spezifikationen<br />
                12 - EnEV 2014 (Vereinf. Verfahren)<br />
                13 - EnEV 2014 (Vereinf. Verfahren) zzgl. KfW-Spezifikationen<br />
                14 - EnEV 2014 (Vereinf. Verfahren, verschärfte Anf.)<br />
                15 - EnEV 2014 (Vereinf. Verfahren, verschärfte Anf.) zzgl. KfW-Spezifikationen
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="1"/>
                    <xs:enumeration value="3"/>
                    <xs:enumeration value="4"/>
                    <xs:enumeration value="5"/>
                    <xs:enumeration value="6"/>
                    <xs:enumeration value="7"/>
                    <xs:enumeration value="8"/>

                    <xs:enumeration value="10"/>
                    <xs:enumeration value="11"/>
                    <xs:enumeration value="12"/>
                    <xs:enumeration value="13"/>
                    <xs:enumeration value="14"/>
                    <xs:enumeration value="15"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="berechnungsmethodeType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Berechnungsmethoden können angegeben werden:<br />
                3 - DIN V 18599:2007<br />
                4 - DIN V 18599:2011
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="3"/>
                    <xs:maxInclusive value="4"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeude_volumen_beheiztType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                    Beheiztes Bruttovolumen Ve des Gesamtgebäudes
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="100"/>
                    <xs:maxInclusive value="800000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeude_umfassungsflaecheType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                    Thermische Hüllfläche A des Gesamtgebäudes
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="50"/>
                    <xs:maxInclusive value="250000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="gebaeude_nutzflaecheType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                    Gemäß EnEV bestimmte thermisch konditionierte NGF des Gesamtgebäudes
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="30"/>
                    <xs:maxInclusive value="80000"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_opak_19Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="0.604"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_transparent_19Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="10"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_lichtkuppel_19Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="10"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_opak_12Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="0.904"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_transparent_12Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="10"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="uwert_lichtkuppel_12Type">
        <xs:union memberTypes="emptyValue realFraction_3">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0.001"/>
                    <xs:maxInclusive value="10"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="jpeb_qp_refType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="40"/>
                    <xs:maxInclusive value="750"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="jpeb_qpType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="500"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="nutzenergiebedarfType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="500"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="erzeugernutzenergieabgabeType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="500"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="endenergiebedarfType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="500"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="primaerenergiebedarfType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="500"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_erzeuger_heizungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Heizungssysteme können angegeben werden:<br />
                10 - Sonstige Kessel<br />
                20 - Standardkessel<br />
                30 - Niedertemperatur-Kessel<br />
                40 - Brennwert-Kessel<br />
                41 - Brennwert-Kessel, verbessert<br />
                50 - Nah-/Fernwärme<br />
                60 - Dezentral Kraft-Wärme-Kopplung (mikro-KWK und KWK)<br />
                70 - Solaranlage zur Trinkwassererwärmung und Heizungsunterstützung (Solare Kombianlage)<br />
                80 - Elektrisch angetriebene Luft/Wasser-Heizungswärmepumpe<br />
                90 - Elektrisch angetriebene Sole/Wasser-Heizungswärmepumpe<br />
                100 - Elektrisch angetriebene Wasser/Wasser-Heizungswärmepumpe<br />
                101 - Elektrisch angetriebene Abluft/Wasser-Heizungswärmepumpe<br />
                102 - Elektrisch angetriebene Luft/Luft-Heizungswärmepumpe<br />
                110 - Sorptions-Gaswärmepumpe<br />
                111 - Gasmotorisch angetriebene Luft/Wasser-Heizungswärmepumpe<br />
                112 - Gasmotorisch angetriebene Luft/Luft-Heizungswärmepumpe<br />
                121 - Dezentrale elektrische Direktheizung<br />
                122 - Zentral elektrisch beheizte Wärmeerzeuger<br />
                130 - Dezentrale Hallenheizung (Warmlufterzeuger)<br />
                140 - Dezentrale Hallenheizung (Dunkelstrahler)<br />
                141 - Dezentrale Hallenheizung (Hellstrahler, indirekte Abgasabfuhr)<br />
                142 - Dezentrale Hallenheizung (Hellstrahler, direkte Abgasabfuhr)<br />
                150 - Sonstige<br />
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="40" />
                    <xs:enumeration value="41" />
                    <xs:enumeration value="50" />
                    <xs:enumeration value="60" />
                    <xs:enumeration value="70" />
                    <xs:enumeration value="80" />
                    <xs:enumeration value="90" />
                    <xs:enumeration value="100" />
                    <xs:enumeration value="101" />
                    <xs:enumeration value="102" />
                    <xs:enumeration value="110" />
                    <xs:enumeration value="111" />
                    <xs:enumeration value="112" />
                    <xs:enumeration value="121" />
                    <xs:enumeration value="122" />
                    <xs:enumeration value="130" />
                    <xs:enumeration value="140" />
                    <xs:enumeration value="141" />
                    <xs:enumeration value="142" />
                    <xs:enumeration value="150" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="energietraeger_erzeugerType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Heizungssysteme können angegeben werden:<br />
                10 - Erdgas H<br />
                11 - Erdgas LL (L)<br />
                12 - Biogas<br />
                13 - Erdgas-Biogas-Gemisch<br />
                20 - Flüssiggas<br />
                30 - Heizöl EL<br />
                31 - Heizöl-Bioöl-Gemisch<br />
                32 - Bioöl<br />
                41 - Steinkohle<br />
                42 - Braunkohle<br />
                70 - Holz<br />
                110 - allgemeiner Strommix<br />
                120 - Nah-/Fernwärme aus KWK, fossiler Brennstoff<br />
                121 - Nah-/Fernwärme aus KWK, erneuerbarer Brennstoff<br />
                122 - Nah-/Fernwärme aus Heizwerken, fossiler Brennstoff<br />
                123 - Nah-/Fernwärme aus Heizwerken, erneuerbarer Brennstoff<br />
                130 - Solarenergie<br />
                140 - Erdwärme, Geothermie<br />
                150 - Umgebungswärme<br />
                160 - Umgebungskälte<br />
                161 - Abwärme aus Prozessen<br />
                170 - Sonstige<br />
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="11" />
                    <xs:enumeration value="12" />
                    <xs:enumeration value="13" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="31" />
                    <xs:enumeration value="32" />
                    <xs:enumeration value="41" />
                    <xs:enumeration value="42" />
                    <xs:enumeration value="70" />
                    <xs:enumeration value="110" />
                    <xs:enumeration value="120" />
                    <xs:enumeration value="121" />
                    <xs:enumeration value="122" />
                    <xs:enumeration value="123" />
                    <xs:enumeration value="130" />
                    <xs:enumeration value="140" />
                    <xs:enumeration value="150" />
                    <xs:enumeration value="160" />
                    <xs:enumeration value="161" />
                    <xs:enumeration value="170" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="fpType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Primärenergiefaktor für den Erzeuger
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="0"/>
                    <xs:maxInclusive value="3"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_erzeuger_warmwasserType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Heizungssysteme können angegeben werden:<br />
                10 - Sonstige Kessel<br />
                20 - Standardkessel<br />
                30 - Niedertemperatur-Kessel<br />
                40 - Brennwert-Kessel<br />
                41 - Brennwert-Kessel, verbessert<br />
                50 - Nah-/Fernwärme<br />
                60 - Dezentral Kraft-Wärme-Kopplung (mikro-KWK und KWK)<br />
                70 - Solaranlage zur Trinkwassererwärmung <br />
                80 - Elektrisch angetriebene Luft/Wasser-Wärmepumpe<br />
                90 - Elektrisch angetriebene Sole/Wasser-Wärmepumpe<br />
                100 - Elektrisch angetriebene Wasser/Wasser-Wärmepumpe<br />
                101 - Elektrisch angetriebene Abluft/Wasser-Wärmepumpe<br />
                102 - Elektrisch angetriebene Luft/Luft-Wärmepumpe<br />
                110 - Sorptions-Gaswärmepumpe<br />
                111 - Gasmotorisch angetriebene Luft/Wasser-Wärmepumpe<br />
                120 - Direkt beheizter Trinkwarmwasserspeicher (Gas)<br />
                121 - Elektro-Durchlauferhitzer<br />
                122 - Elektrisch beheizter Trinkwarmwasserspeicher<br />
                150 - Sonstige<br />
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="40" />
                    <xs:enumeration value="41" />
                    <xs:enumeration value="50" />
                    <xs:enumeration value="60" />
                    <xs:enumeration value="70" />
                    <xs:enumeration value="80" />
                    <xs:enumeration value="90" />
                    <xs:enumeration value="100" />
                    <xs:enumeration value="101" />
                    <xs:enumeration value="102" />
                    <xs:enumeration value="110" />
                    <xs:enumeration value="111" />
                    <xs:enumeration value="120" />
                    <xs:enumeration value="121" />
                    <xs:enumeration value="122" />
                    <xs:enumeration value="150" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_lueftungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Als Lüftungsanlage können folgende Werte genutzt werden:<br />
                10 - nicht vorhanden<br />
                20 - Abluft<br />
                21 - Zuluft<br />
                30 - Zu-/Abluft ohne WRG<br />
                40 - Zu-/Abluft mit WRG<br />
                50 - Zu-/Abluft mit Luftbefeuchtung, ohne Feuchterückgewinnung<br />
                60 - Zu-/Abluft mit Luftbefeuchtung, mit Feuchterückgewinnung<br />
                70 - Zu-/Abluft mit WRG, mit Luftbefeuchtung, ohne Feuchterückgewinnung<br />
                80 - Zu-/Abluft mit WRG, mit Luftbefeuchtung, mit Feuchterückgewinnung
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="21" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="40" />
                    <xs:enumeration value="50" />
                    <xs:enumeration value="60" />
                    <xs:enumeration value="70" />
                    <xs:enumeration value="80" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="waermerueckgewinnungsgradType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Angaben zum Wärmerückgewinnungsgrad in %
                ]]>
            </xs:documentation>
        </xs:annotation>

        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:nonNegativeInteger">
                    <xs:minInclusive value="0" />
                    <xs:maxInclusive value="100" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_lueftung_registerType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Registertypen können genutzt werden:<br />
                10 - nicht vorhanden<br />
                20 - Heizregister<br />
                30 - Kühlregister<br />
                40 - Heiz- & Kühlregister
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="40" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagensystem_kuehlungType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Kühlungssysteme können genutzt werden:<br />
                10 - nicht vorhanden<br />
                20 - Kolben-/Scroll-Verdichter<br />
                30 - Schrauben-/Turbo-Verdichter<br />
                40 - Schraubenverdichter<br />
                50 - Splitgerät<br />
                60 - Multisplitgerät<br />
                70 - Kompaktklimagerät<br />
                80 - VRF-System<br />
                90 - Absorptionskälteanlage (H20/LiBr)<br />
                95 - Geothermische Kühlung/Sole-Wasser-Wärmepumpe<br />
                100 - Sonstige
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                    <xs:enumeration value="40" />
                    <xs:enumeration value="50" />
                    <xs:enumeration value="60" />
                    <xs:enumeration value="70" />
                    <xs:enumeration value="80" />
                    <xs:enumeration value="90" />
                    <xs:enumeration value="95" />
                    <xs:enumeration value="100" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="anlagentechnik_erneuerbarer_strom_erzeugerType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Anlagen zur Erzeugung erneuerbaren Stroms können genutzt werden:<br />
                    10 - PV-Anlage<br />
                    20 - Windkraftanlage<br />
                    30 - Sonstige
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:enumeration value="10" />
                    <xs:enumeration value="20" />
                    <xs:enumeration value="30" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="zone_nutzungsprofilType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                    Folgende Nutzungsprofile können in der Version 2007 angegeben werden:<br />
                    1 - 1-Einzelbüro<br />
                    2 - 2-Gruppenbüro (2-6 Arbeitsplätze)<br />
                    3 - 3-Großraumbüro (ab 7 Arbeitsplätze)<br />
                    4 - 4-Besprechung, Sitzung, Seminar<br />
                    5 - 5-Schalterhalle<br />
                    6 - 6-Einzelhandel/Kaufhaus<br />
                    7 - 7-Einzelhandel/Kaufhaus (Lebensmittelabt. m. Kühlprod.)<br />
                    8 - 8-Klassenzimmer (Schule), Gruppenraum (Kindergarten)<br />
                    9 - 9-Hörsaal, Auditorium<br />
                    10 - 10-Bettenzimmer<br />
                    11 - 11-Hotelzimmer<br />
                    12 - 12-Kantine<br />
                    13 - 13-Restaurant<br />
                    14 - 14-Küchen in NWG<br />
                    15 - 15-Küche – Vorbereitung, Lager<br />
                    16 - 16-WC u. Sanitärräume in NWG<br />
                    17 - 17-Sonstige Aufenthaltsräume<br />
                    18 - 18-Nebenflächen (oh. Aufenthaltsräume)<br />
                    19 - 19-Verkehrsflächen<br />
                    20 - 20-Lager, Technik, Archiv<br />
                    21 - 21-Rechenzentrum<br />
                    22 - 22-Werkstatt, Montage, Fertigung<br />
                    25 - 23-Zuschauerbereich (Theater u. Veranstaltungsbauten)<br />
                    26 - 24-Foyer (Theater u. Veranstaltungsbauten)<br />
                    27 - 25-Bühne (Theater u. Veranstaltungsbauten)<br />
                    28 - 26-Messe / Kongress<br />
                    29 - 27-Ausstellungsräume u. Museum m. konservatorischen Anforderungen<br />
                    30 - 28-Bibliothek – Lesesaal<br />
                    31 - 29-Bibliothek – Freihandbereich<br />
                    32 - 30-Bibliothek – Magazin u. Depot<br />
                    33 - 31-Turnhalle (ohne Zuschauerbereich)<br />
                    34 - 32-Parkhäuser (Büro- u. Privatnutzung)<br />
                    35 - 33-Parkhäuser (öffentliche Nutzung)<br />
                    36 - 35-Saunabereich (Teil100)<br />
                    37 - 36-Fitnessraum (Teil100)<br />
                    38 - 37-Labor (Teil100)<br />
                    39 - 38-Untersuchungs- u. Behandlungsräume (Teil100)<br />
                    40 - 39-Spezialpflegebereiche (Teil100)<br />
                    41 - 40-Flure des allgemeinen Pflegebereichs (Teil100)<br />
                    42 - 41-Arztpraxen u. Therapeutische Praxen  (Teil100)<br />
                    43 - 42-Lagerhallen, Logistikhallen (Teil100)<br />
                    100 - Wohngebäude: Einfamilienhaus<br />
                    101 - Wohngebäude: Mehrfamilienhaus
                    <br />
                    <br />

                    Folgende Nutzungsprofile können in der Version 2011 angegeben werden:<br />
                    1 - 1-Einzelbüro<br />
                    2 - 2-Gruppenbüro (2-6 Arbeitsplätze)<br />
                    3 - 3-Großraumbüro (ab 7 Arbeitsplätze)<br />
                    4 - 4-Besprechung, Sitzung, Seminar<br />
                    5 - 5-Schalterhalle<br />
                    6 - 6-Einzelhandel/Kaufhaus<br />
                    7 - 7-Einzelhandel/Kaufhaus (Lebensmittelabt. m. Kühlprod.)<br />
                    8 - 8-Klassenzimmer (Schule), Gruppenraum (Kindergarten)<br />
                    9 - 9-Hörsaal, Auditorium<br />
                    10 - 10-Bettenzimmer<br />
                    11 - 11-Hotelzimmer<br />
                    12 - 12-Kantine<br />
                    13 - 13-Restaurant<br />
                    14 - 14-Küchen in NWG<br />
                    15 - 15-Küche – Vorbereitung, Lager<br />
                    16 - 16-WC u. Sanitärräume in NWG<br />
                    17 - 17-Sonstige Aufenthaltsräume<br />
                    18 - 18-Nebenflächen (oh. Aufenthaltsräume)<br />
                    19 - 19-Verkehrsflächen<br />
                    20 - 20-Lager, Technik, Archiv<br />
                    21 - 21-Rechenzentrum<br />
                    22 - 22.1-Gewerbliche u. industrielle Hallen – schwere Arbeit, steh. Tätigkeit<br />
                    23 - 22.2-Gewerbliche u. industrielle Hallen – mittelschw. Arbeit, überw. steh. Tätigkeit<br />
                    24 - 22.3-Gewerbliche u. industrielle Hallen – leichte Arbeit, überw. sitz. Tätigkeit<br />
                    25 - 23-Zuschauerbereich (Theater u. Veranstaltungsbauten)<br />
                    26 - 24-Foyer (Theater u. Veranstaltungsbauten)<br />
                    27 - 25-Bühne (Theater u. Veranstaltungsbauten)<br />
                    28 - 26-Messe / Kongress<br />
                    29 - 27-Ausstellungsräume u. Museum m. konservatorischen Anforderungen<br />
                    30 - 28-Bibliothek – Lesesaal<br />
                    31 - 29-Bibliothek – Freihandbereich<br />
                    32 - 30-Bibliothek – Magazin u. Depot<br />
                    33 - 31-Turnhalle (ohne Zuschauerbereich)<br />
                    34 - 32-Parkhäuser (Büro- u. Privatnutzung)<br />
                    35 - 33-Parkhäuser (öffentliche Nutzung)<br />
                    36 - 34-Saunabereich<br />
                    37 - 35-Fitnessraum<br />
                    38 - 36-Labor<br />
                    39 - 37-Untersuchungs- u. Behandlungsräume<br />
                    40 - 38-Spezialpflegebereiche<br />
                    41 - 39-Flure des allgemeinen Pflegebereichs<br />
                    42 - 40-Arztpraxen u. Therapeutische Praxen<br />
                    43 - 41-Lagerhallen, Logistikhallen<br />
                    100 - Wohngebäude: Einfamilienhaus<br />
                    101 - Wohngebäude: Mehrfamilienhaus
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:union>
                    <xs:simpleType>
                        <xs:restriction base="xs:positiveInteger">
                            <xs:minInclusive value="1" />
                            <xs:maxInclusive value="43" />
                        </xs:restriction>
                    </xs:simpleType>
                    <xs:simpleType>
                        <xs:restriction base="xs:positiveInteger">
                            <xs:minInclusive value="100" />
                            <xs:maxInclusive value="101" />
                        </xs:restriction>
                    </xs:simpleType>
                </xs:union>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="zone_luftdichtheitskategorieType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Typen für Luftdichtheitskategorie können verwendet werden:<br />
                1 - Kategorie I<br />
                2 - Kategorie II<br />
                3 - Kategorie III<br />
                4 - Kategorie IV<br />
                5 - Messwert
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1" />
                    <xs:maxInclusive value="5" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="zone_waermebrueckenzuschlagType">
        <xs:annotation>
            <xs:documentation>
                <![CDATA[
                Folgende Typen für Wärmebrückenzuschlag können verwendet werden:<br />
                1 - pauschal (0,10 W/(m²·K))<br />
                2 - optimiert (0,05 W/(m²·K))<br />
                3 - erhöht (0,15 W/(m²·K))<br />
                4 - differenziert
                ]]>
            </xs:documentation>
        </xs:annotation>
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:positiveInteger">
                    <xs:minInclusive value="1" />
                    <xs:maxInclusive value="4" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>

    <xs:simpleType name="zone_waermebrueckenverlust_detailliertType">
        <xs:union memberTypes="emptyValue">
            <xs:simpleType>
                <xs:restriction base="xs:float">
                    <xs:minInclusive value="-0.05" />
                    <xs:maxInclusive value="0.15" />
                </xs:restriction>
            </xs:simpleType>
        </xs:union>
    </xs:simpleType>
    <!-- END validation types -->

    <!-- BEGIN reusable types -->
    <xs:simpleType name="emptyValue">
        <xs:restriction base="xs:string">
            <xs:enumeration value=""/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="realFraction_3">
        <xs:restriction base="xs:decimal">
            <xs:fractionDigits value="3" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="real">
        <xs:restriction base="xs:decimal">
            <xs:pattern value="[0-9]+(\.{1}[0-9]+)?"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="booleanOrEmpty">
        <xs:union memberTypes="emptyValue xs:boolean"/>
    </xs:simpleType>

    <xs:simpleType name="positiveIntegerOrEmpty">
        <xs:union memberTypes="emptyValue xs:positiveInteger"/>
    </xs:simpleType>

    <xs:simpleType name="nonNegativeIntegerOrEmpty">
        <xs:union memberTypes="emptyValue xs:nonNegativeInteger"/>
    </xs:simpleType>

    <xs:simpleType name="stringOrEmpty">
        <xs:union memberTypes="emptyValue xs:string"/>
    </xs:simpleType>

    <xs:simpleType name="realOrEmpty">
        <xs:union memberTypes="emptyValue real"/>
    </xs:simpleType>

    <xs:simpleType name="attributeVersionType">
        <xs:restriction base="xs:string">
            <xs:pattern value="[0-9]+\.{1}[0-9]+\.{1}[0-9]+"/>
        </xs:restriction>
    </xs:simpleType>
    <!-- END reusable types -->

    <!-- ATTRIBUTES -->
    <xs:attribute name="version" type="attributeVersionType" />
    <!-- END ATTRIBUTES -->
</xs:schema>
            
        

Hinweise zum Inhalt

Energiebedarf

Die Eingabe in die Tabelle "Spezifischer Energiebedarf je Gewerk in kWh/(m²a)" erfolgt stets ohne die Einbeziehung von selbst erzeugtem Strom.
Dieser Anteil ist separat anzugeben unter <erneuerbarer_strom></erneuerbarer_strom>.

Anlagentechnik

Es können in Gedatrans maximal drei Anlagentypen erfasst werden. Sind im Gebäude mehr als drei Anlagentypen vorhanden, dann sind diese entsprechend der versorgten Fläche absteigend sortiert anzugeben.

Zonierung

Die Energiekennwerte in den Zonen sind als absolute Werte einzutragen.

Die dena steht für Sonderfälle mit mehr als drei Anlagentypen und/oder mehr als 20 Zonen jederzeit zur Verfügung.

Es sind maximal 20 Zonen mit Gedatrans abbildbar.
Sind mehr als 20 Zonen vorhanden, dann sind diese entsprechend der größten Fläche nach anzugeben.

Vereinfachtes Verfahren (Ein-Zonen-Modell)
Es ist genau eine Zone anzugeben.

Changelog

v1.0.1 - 2021-12-10

  • Ergänzung folgender Werte für nachweis_verfahren:
    • GEG (2020)
  • Ergänzung folgender Werte für effizienzhausniveau:
    • 60 - Effizienzhaus 40 EE
    • 70 - Effizienzhaus 55 EE
    • 80 - Effizienzhaus 40 NH
    • 90 - Effizienzhaus 55 NH
    • 100 - Effizienzhaus 70 EE
    • 110 - Effizienzhaus 70 NH
    • 120 - Effizienzhaus 100 EE
    • 130 - Effizienzhaus 100 NH
    • 140 - Effizienzhaus Denkmal EE
    • 150 - Effizienzhaus Denkmal NH
Ein Versionsupgrade wurde nicht durchgeführt, um höchstmögliche Kompatibilität zu bestehenden Softwareimplementierungen zu gewährleisten.

v1.0.1 - 2020-03-26

  • Hinzufügen von 95 - Geothermische Kühlung/Sole-Wasser-Wärmepumpe für Anlagentechnik
  • Hinweis auf Werte in Tabelle "Spezifischer Energiebedarf je Gewerk"

v1.0.0 - 2017-04-10

  • Erste öffentliche Version
  • initiale Veröffentlichung

Inhaltsübersicht

  1. Einleitung
  2. Allgemeine Informationen
  3. Module
    1. Praxisnachweis WG
    2. Praxisnachweis WG Denkmal
    3. Praxisnachweis NWG
  4. Changelog
  5. Versionen

Zweckbeschreibung

Der Zweck des API (Application Programming Interface: Schnittstelle) liegt in der automatischen Übertragung von Daten aus proprietärer Software in den GeDaTrans der Deutschen Energie-Agentur (dena).

Aktuell stehen folgende Funktionen bereit:

  1. Praxisnachweis WG
  2. Praxisnachweis WG Denkmal
  3. Praxisnachweis NWG

Standard-Fehlercodes

0 Anfrage erfolgreich, alles in Ordnung
10 falscher Request-Typ
20 fehlende Daten
21 Daten sind nicht valide
99 sonstiger Fehler

Zuordnung API-Fehlercode (links) zu HTTP-Status-Codes (rechts)

0 200 OK
10 405 Method not allowed
20 400 Bad Request
21 400 Bad Request
99 500 Internal Server Error

Standard-Dispatcher-IDs

  • der Dispatcher ist der Einstiegspunkt in das API für die Weiterverarbeitung von Daten
  • ein direkter Zugriff auf GeDaTrans-Module (z. B. Praxisnachweis-Login) ist nicht zulässig
  • es ist ausschließlich der hier genannte Link https://www.gedatrans.de/dispatcher/ für die Weiterverarbeitung der Daten zu nutzen
  • Hinweise zur Parameterisierung erfolgen in den einzelnen Schnittstellenbeschreibungen

Folgende Services sind implementiert

16 Praxisnachweis WG (https://www.gedatrans.de/dispatcher/16/%TOKEN%)
17 Praxisnachweis WG Denkmal (https://www.gedatrans.de/dispatcher/17/%TOKEN%)
32 Praxisnachweis NWG (https://www.gedatrans.de/dispatcher/32/%TOKEN%)

Allgemeine Information

Rückgabe für alle Anfragen unabhängig von Erfolg oder Misserfolg ist ausschließlich JSON

Programm-Ablauf

  • Software übermittelt die Daten im jeweiligen Format (gd2, gd3) an das API
  • API prüft auf formale Korrektheit der Anfrage
  • API validiert die Daten
  • im Erfolgsfall liefert API einen Token

Spezifizierung Token

  • Zeichenkette
  • 32 Zeichen
  • Zeichenvorrat: A-Za-z0-9_-
  • Gültigkeit: 15 Minuten
  • Beispiel: xPq3mWlLDMoZZNWztzFU9beyWuCv93h9

Praxisnachweis WG

Kurzbeschreibung

Bereitstellung von Daten für das GeDaTrans-Modul Praxisnachweis WG. Für den Transfer ist ein Login im GeDaTrans notwendig.

Die übermittelten Daten müssen im Format gd2 vorliegen und werden automatisch gegen ein xsd-Schema validiert.

Anfrage: Import initialisieren

URL https://www.gedatrans.de/api/transfer/request-import
Typ POST

Aufbau der Anfrage

Der Anfrage-Body besteht aus zwei POST-Variablen:

gd2 Die Daten im gd2-Format (komplette XML-Struktur) als String
meta Ein JSON-String mit zusätzlichen Informationen zur Anfrage
  • im meta-Feld sollte mindestens die Software-Version mitgeteilt werden
  • für die Implementierung ist das Objekt software mit den beiden Schlüsseln name und version zu nutzen
  • siehe folgendes Beispiel

Beispiel-Anfrage-Body

                
                    gd2: <?xml version="1.0"?><gedatrans version="1.0.2"><praxisnachweis><leistungsnachweis_typ> ...
                    meta: {"software":{"name":"Test-Software","version":"1.15.12"}}
                
            

Beispiel-Anfrage-Body (PHP)

                
                    $_POST = [
                        'gd2' => '<?xml version="1.0"?><gedatrans version="1.0.0"><praxisnachweis><leistungsnachweis_typ> ...'
                        'meta' => '{"software":{"name":"Test-Software","version":"1.15.12"}}'
                    ]
                
            

Beispiel-Header der Anfrage

                
                    Accept:*/*
                    Accept-Encoding:gzip, deflate
                    Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
                    Cache-Control:no-cache
                    Connection:keep-alive
                    Content-Length:6630
                    Content-Type:application/x-www-form-urlencoded
                    Cookie: PHPSESSID=amikiuk5ltrhift1c93780if72
                    Host: example.gedatrans.de
                    Origin: http://example.gedatrans.de
                    User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0 ...
                
            

Rückgabe

Die Rückgabe ist in drei Objekte geteilt:

error gibt Auskunft über den Verarbeitungsstand der gesendeten Daten und besteht aus einem Fehler-Code und einer Nachricht
data enthält die zurückgelieferten Daten (kann auch leer sein, bspw. im Fehlerfall)
meta liefert Informationen über den anfragenden Client, etc.

Erfolg

                
                    {
                        "error": {
                            "code": 0,
                            "message": "Data accepted - token generated."
                        },
                        "data": {
                            "token": "3Murnbqmyo0KEjIbEjKAO2hhIWIEWS-U",
                            "url": "https://www.gedatrans.de/dispatcher/16/3Murnbqmyo0KEjIbEjKAO2hhIWIEWS-U"
                        },
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443528643
                        }
                    }
                
            

falscher Request-Type

                
                    {
                        "error": {
                            "code": 10,
                            "message": "This request requires method POST only."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443517975
                        }
                    }
                
            

fehlende Daten

                
                    {
                        "error": {
                            "code": 20,
                            "message": "No data present."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518062
                        }
                    }
                
            

gd2 nicht valide

                
                    {
                        "error": {
                            "code": 21,
                            "message": "The data is not valid. Please check the xsd schema file."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518171
                        }
                    }
                
            

sonstiger Fehler

                
                    {
                        "error": {
                            "code": 99,
                            "message": "Critical Error. Please contact administrator."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518247
                        }
                    }
                
            

Import der Daten in GeDaTrans

  • Software öffnet Browser mit folgendem Link: https://www.gedatrans.de/dispatcher/16/%TOKEN%
    • %TOKEN% wird durch das eigentliche Token ersetzt
    • Beispiel: https://www.gedatrans.de/dispatcher/16/6yuA3HMzR_c9IjdPJk6-mkIrmjFKRnUh
  • dieser Link wird zusätzlich noch in der Rückgabe mitgeliefert
  • bei Gültigkeit des Tokens und erfolgreichem Login werden die Daten importiert

Praxisnachweis WG Denkmal

Kurzbeschreibung

Bereitstellung von Daten für das GeDaTrans-Modul Praxisnachweis WG Denkmal. Für den Transfer ist ein Login im GeDaTrans notwendig.

Die übermittelten Daten müssen im Format gd2 vorliegen und werden automatisch gegen ein xsd-Schema validiert.

Anfrage: Import initialisieren

URL https://www.gedatrans.de/api/transfer/request-import-gd2-denkmal
Typ POST

Aufbau der Anfrage

Der Anfrage-Body besteht aus zwei POST-Variablen:

gd2 Die Daten im gd2-Format (komplette XML-Struktur) als String
meta Ein JSON-String mit zusätzlichen Informationen zur Anfrage
  • im meta-Feld sollte mindestens die Software-Version mitgeteilt werden
  • für die Implementierung ist das Objekt software mit den beiden Schlüsseln name und version zu nutzen
  • siehe folgendes Beispiel

Beispiel-Anfrage-Body

                
                    gd2: <?xml version="1.0"?><gedatrans version="1.0.2"><praxisnachweis><leistungsnachweis_typ> ...
                    meta: {"software":{"name":"Test-Software","version":"1.15.12"}}
                
            

Beispiel-Anfrage-Body (PHP)

                
                    $_POST = [
                        'gd2' => '<?xml version="1.0"?><gedatrans version="1.0.0"><praxisnachweis><leistungsnachweis_typ> ...'
                        'meta' => '{"software":{"name":"Test-Software","version":"1.15.12"}}'
                    ]
                
            

Beispiel-Header der Anfrage

                
                    Accept:*/*
                    Accept-Encoding:gzip, deflate
                    Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
                    Cache-Control:no-cache
                    Connection:keep-alive
                    Content-Length:6630
                    Content-Type:application/x-www-form-urlencoded
                    Cookie: PHPSESSID=amikiuk5ltrhift1c93780if72
                    Host: example.gedatrans.de
                    Origin: http://example.gedatrans.de
                    User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0 ...
                
            

Rückgabe

Die Rückgabe ist in drei Objekte geteilt:

error gibt Auskunft über den Verarbeitungsstand der gesendeten Daten und besteht aus einem Fehler-Code und einer Nachricht
data enthält die zurückgelieferten Daten (kann auch leer sein, bspw. im Fehlerfall)
meta liefert Informationen über den anfragenden Client, etc.

Erfolg

                
                    {
                        "error": {
                            "code": 0,
                            "message": "Data accepted - token generated."
                        },
                        "data": {
                            "token": "zbqg4tSRxXuKTGpC_WTwOTrltYFP6oCB",
                            "url": "https://www.gedatrans.de/dispatcher/17/zbqg4tSRxXuKTGpC_WTwOTrltYFP6oCB"
                        },
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1498644861
                        }
                    }
                
            

falscher Request-Type

                
                    {
                        "error": {
                            "code": 10,
                            "message": "This request requires method POST only."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1498644861
                        }
                    }
                
            

fehlende Daten

                
                    {
                        "error": {
                            "code": 20,
                            "message": "No data present."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1498644861
                        }
                    }
                
            

gd2 nicht valide

                
                    {
                        "error": {
                            "code": 21,
                            "message": "The data is not valid. Please check the xsd schema file."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1498644861
                        }
                    }
                
            

sonstiger Fehler

                
                    {
                        "error": {
                            "code": 99,
                            "message": "Critical Error. Please contact administrator."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1498644861
                        }
                    }
                
            

Import der Daten in GeDaTrans

  • Software öffnet Browser mit folgendem Link: https://www.gedatrans.de/dispatcher/17/%TOKEN%
    • %TOKEN% wird durch das eigentliche Token ersetzt
    • Beispiel: https://www.gedatrans.de/dispatcher/17/zbqg4tSRxXuKTGpC_WTwOTrltYFP6oCB
  • dieser Link wird zusätzlich noch in der Rückgabe mitgeliefert
  • bei Gültigkeit des Tokens und erfolgreichem Login werden die Daten importiert

Praxisnachweis NWG

Kurzbeschreibung

Bereitstellung von Daten für das GeDaTrans-Modul Praxisnachweis NWG. Für den Transfer ist ein Login im GeDaTrans notwendig.

Die übermittelten Daten müssen im Format gd3 vorliegen und werden automatisch gegen ein xsd-Schema validiert.

Anfrage: Import initialisieren

URL https://www.gedatrans.de/api/transfer/request-import-gd3
Typ POST

Aufbau der Anfrage

Der Anfrage-Body besteht aus zwei POST-Variablen:

gd3 Die Daten im gd3-Format (komplette XML-Struktur) als String
meta Ein JSON-String mit zusätzlichen Informationen zur Anfrage
  • im meta-Feld sollte mindestens die Software-Version mitgeteilt werden
  • für die Implementierung ist das Objekt software mit den beiden Schlüsseln name und version zu nutzen
  • siehe folgendes Beispiel

Beispiel-Anfrage-Body

                
                    gd3: <?xml version="1.0"?><gedatrans version="1.0.2"><praxisnachweis><leistungsnachweis_typ> ...
                    meta: {"software":{"name":"Test-Software","version":"1.15.12"}}
                
            

Beispiel-Anfrage-Body (PHP)

                
                    $_POST = [
                        'gd3' => '<?xml version="1.0"?><gedatrans version="1.0.2"><praxisnachweis><leistungsnachweis_typ> ...'
                        'meta' => '{"software":{"name":"Test-Software","version":"1.15.12"}}'
                    ]
                
            

Beispiel-Header der Anfrage

                
                    Accept:*/*
                    Accept-Encoding:gzip, deflate
                    Accept-Language:de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
                    Cache-Control:no-cache
                    Connection:keep-alive
                    Content-Length:6630
                    Content-Type:application/x-www-form-urlencoded
                    Cookie: PHPSESSID=amikiuk5ltrhift1c93780if72
                    Host: example.gedatrans.de
                    Origin: http://example.gedatrans.de
                    User-Agent:Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0 ...
                
            

Rückgabe

Die Rückgabe ist in drei Objekte geteilt:

error gibt Auskunft über den Verarbeitungsstand der gesendeten Daten und besteht aus einem Fehler-Code und einer Nachricht
data enthält die zurückgelieferten Daten (kann auch leer sein, bspw. im Fehlerfall)
meta liefert Informationen über den anfragenden Client, etc.

Erfolg

                
                    {
                        "error": {
                            "code": 0,
                            "message": "Data accepted - token generated."
                        },
                        "data": {
                            "token": "3Murnbqmyo0KEjIbEjKAO2hhIWIEWS-U",
                            "url": "https://www.gedatrans.de/dispatcher/32/3Murnbqmyo0KEjIbEjKAO2hhIWIEWS-U"
                        },
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443528643
                        }
                    }
                
            

falscher Request-Type

                
                    {
                        "error": {
                            "code": 10,
                            "message": "This request requires method POST only."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443517975
                        }
                    }
                
            

fehlende Daten

                
                    {
                        "error": {
                            "code": 20,
                            "message": "No data present."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518062
                        }
                    }
                
            

gd3 nicht valide

                
                    {
                        "error": {
                            "code": 21,
                            "message": "The data is not valid. Please check the xsd schema file."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518171
                        }
                    }
                
            

sonstiger Fehler

                
                    {
                        "error": {
                            "code": 99,
                            "message": "Critical Error. Please contact administrator."
                        },
                        "data": {},
                        "meta": {
                            "request_ip": "192.168.5.111",
                            "request_time": 1443518247
                        }
                    }
                
            

Import der Daten in GeDaTrans

  • Software öffnet Browser mit folgendem Link: https://www.gedatrans.de/dispatcher/32/%TOKEN%
    • %TOKEN% wird durch das eigentliche Token ersetzt
    • Beispiel: https://www.gedatrans.de/dispatcher/32/6yuA3HMzR_c9IjdPJk6-mkIrmjFKRnUh
  • dieser Link wird zusätzlich noch in der Rückgabe mitgeliefert
  • bei Gültigkeit des Tokens und erfolgreichem Login werden die Daten importiert

Changelog

v1.2.0 - 2018-02-15

  • Funktion hinzugefügt: Import Praxisnachweis WG Denkmal

v1.1.0 - 2017-04-11

  • Funktion hinzugefügt: Import Praxisnachweis NWG
  • Anpassung der Benennungen zur Unterscheidung zwischen NWG und WG
  • Anpassung der Wortlaute der API-Statusmeldungen

v1.0.0 - 2015-09-30

  • initiale Veröffentlichung
  • Funktionen:
    • Import Praxisnachweis

Versionen

v1.2.0 - 2018-02-15

v1.1.0 - 2017-04-11

v1.0.0 - 2015-09-30