bo4e.bo package
Submodules
bo4e.bo.angebot module
Contains Angebot class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.angebot.Angebot(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.ANGEBOT, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, angebotsnummer: str | None = None, angebotsdatum: datetime | None = None, sparte: Sparte | None = None, angebotsgeber: Geschaeftspartner | None = None, angebotsnehmer: Geschaeftspartner | None = None, varianten: list[Angebotsvariante] | None = None, anfragereferenz: str | None = None, bindefrist: datetime | None = None, unterzeichnerAngebotsnehmer: Ansprechpartner | None = None, unterzeichnerAngebotsgeber: Ansprechpartner | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektMit diesem BO kann ein Versorgungsangebot zur Strom- oder Gasversorgung oder die Teilnahme an einer Ausschreibung übertragen werden. Es können verschiedene Varianten enthalten sein (z.B. ein- und mehrjährige Laufzeit). Innerhalb jeder Variante können Teile enthalten sein, die jeweils für eine oder mehrere Marktlokationen erstellt werden.
Hint
- anfragereferenz: str | None
Referenz auf eine Anfrage oder Ausschreibung; Kann dem Empfänger des Angebotes bei Zuordnung des Angebotes zur Anfrage bzw. Ausschreibung helfen.
- angebotsgeber: Geschaeftspartner | None
Ersteller des Angebots
- angebotsnehmer: Geschaeftspartner | None
Empfänger des Angebots
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anfragereferenz': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anfragereferenz', alias_priority=1), 'angebotsdatum': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='angebotsdatum', alias_priority=1), 'angebotsgeber': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='angebotsgeber', alias_priority=1), 'angebotsnehmer': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='angebotsnehmer', alias_priority=1), 'angebotsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='angebotsnummer', alias_priority=1), 'bindefrist': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='bindefrist', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.ANGEBOT: 'ANGEBOT'>, alias='_typ', alias_priority=2), 'unterzeichner_angebotsgeber': FieldInfo(annotation=Union[Ansprechpartner, NoneType], required=False, alias='unterzeichnerAngebotsgeber', alias_priority=1), 'unterzeichner_angebotsnehmer': FieldInfo(annotation=Union[Ansprechpartner, NoneType], required=False, alias='unterzeichnerAngebotsnehmer', alias_priority=1), 'varianten': FieldInfo(annotation=Union[list[Angebotsvariante], NoneType], required=False, alias='varianten', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- unterzeichner_angebotsgeber: Ansprechpartner | None
Person, die als Angebotsgeber das Angebots ausgestellt hat
- unterzeichner_angebotsnehmer: Ansprechpartner | None
Person, die als Angebotsnehmer das Angebot angenommen hat
- varianten: list[Angebotsvariante] | None
Eine oder mehrere Varianten des Angebots mit den Angebotsteilen; Ein Angebot besteht mindestens aus einer Variante.
bo4e.bo.ansprechpartner module
Contains Ansprechpartner class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.ansprechpartner.Ansprechpartner(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.ANSPRECHPARTNER, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, individuelleAnrede: str | None = None, anrede: Anrede | None = None, titel: Titel | None = None, vorname: str | None = None, nachname: str | None = None, eMailAdresse: str | None = None, geschaeftspartner: Geschaeftspartner | None = None, adresse: Adresse | None = None, rufnummer: Rufnummer | None = None, kommentar: str | None = None, zustaendigkeit: Zustaendigkeit | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektObject containing information about a Ansprechpartner
- adresse: Adresse | None
Adresse des Ansprechpartners, falls diese von der Adresse des Geschäftspartners abweicht
- geschaeftspartner: Geschaeftspartner | None
Der Geschäftspartner, für den dieser Ansprechpartner modelliert wird
- individuelle_anrede: str | None
Im Falle einer nicht standardisierten Anrede kann hier eine frei definierbare Anrede vorgegeben werden. Beispiel: “Sehr geehrte Frau Müller, sehr geehrter Herr Dr. Müller”
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'adresse': FieldInfo(annotation=Union[Adresse, NoneType], required=False, alias='adresse', alias_priority=1), 'anrede': FieldInfo(annotation=Union[Anrede, NoneType], required=False, alias='anrede', alias_priority=1), 'e_mail_adresse': FieldInfo(annotation=Union[str, NoneType], required=False, alias='eMailAdresse', alias_priority=1), 'geschaeftspartner': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='geschaeftspartner', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'individuelle_anrede': FieldInfo(annotation=Union[str, NoneType], required=False, alias='individuelleAnrede', alias_priority=1), 'kommentar': FieldInfo(annotation=Union[str, NoneType], required=False, alias='kommentar', alias_priority=1), 'nachname': FieldInfo(annotation=Union[str, NoneType], required=False, alias='nachname', alias_priority=1), 'rufnummer': FieldInfo(annotation=Union[Rufnummer, NoneType], required=False, alias='rufnummer', alias_priority=1), 'titel': FieldInfo(annotation=Union[Titel, NoneType], required=False, alias='titel', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.ANSPRECHPARTNER: 'ANSPRECHPARTNER'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vorname': FieldInfo(annotation=Union[str, NoneType], required=False, alias='vorname', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1), 'zustaendigkeit': FieldInfo(annotation=Union[Zustaendigkeit, NoneType], required=False, alias='zustaendigkeit', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- rufnummer: Rufnummer | None
Liste der Telefonnummern, unter denen der Ansprechpartner erreichbar ist
- zustaendigkeit: Zustaendigkeit | None
Liste der Abteilungen und Zuständigkeiten des Ansprechpartners
bo4e.bo.ausschreibung module
Contains Ausschreibung class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.ausschreibung.Ausschreibung(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.AUSSCHREIBUNG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, ausschreibungsnummer: str | None = None, ausschreibungstyp: Ausschreibungstyp | None = None, ausschreibungsstatus: Ausschreibungsstatus | None = None, istKostenpflichtig: bool | None = None, veroeffentlichungszeitpunkt: datetime | None = None, ausschreibender: Geschaeftspartner | None = None, abgabefrist: Zeitraum | None = None, bindefrist: Zeitraum | None = None, lose: list[Ausschreibungslos] | None = None, ausschreibungportal: Ausschreibungsportal | None = None, webseite: str | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektDas BO Ausschreibung dient zur detaillierten Darstellung von ausgeschriebenen Energiemengen in der Energiewirtschaft
- abgabefrist: Zeitraum | None
Diese Komponente wird zur Abbildung von Zeiträumen in Form von Dauern oder der Angabe von Start und Ende verwendet. Es muss daher entweder eine Dauer oder ein Zeitraum in Form von Start und Ende angegeben sein
- ausschreibender: Geschaeftspartner | None
Mit diesem Objekt können Geschäftspartner übertragen werden. Sowohl Unternehmen, als auch Privatpersonen können Geschäftspartner sein
- ausschreibungportal: Ausschreibungsportal | None
Aufzählung der unterstützten Ausschreibungsportale
- ausschreibungsstatus: Ausschreibungsstatus | None
Bezeichnungen für die Ausschreibungsphasen
- ausschreibungstyp: Ausschreibungstyp | None
Aufzählung für die Typisierung von Ausschreibungen
- bindefrist: Zeitraum | None
Diese Komponente wird zur Abbildung von Zeiträumen in Form von Dauern oder der Angabe von Start und Ende verwendet. Es muss daher entweder eine Dauer oder ein Zeitraum in Form von Start und Ende angegeben sein
- lose: list[Ausschreibungslos] | None
Die einzelnen Lose, aus denen sich die Ausschreibung zusammensetzt
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'abgabefrist': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='abgabefrist', alias_priority=1), 'ausschreibender': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='ausschreibender', alias_priority=1), 'ausschreibungportal': FieldInfo(annotation=Union[Ausschreibungsportal, NoneType], required=False, alias='ausschreibungportal', alias_priority=1), 'ausschreibungsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='ausschreibungsnummer', alias_priority=1), 'ausschreibungsstatus': FieldInfo(annotation=Union[Ausschreibungsstatus, NoneType], required=False, alias='ausschreibungsstatus', alias_priority=1), 'ausschreibungstyp': FieldInfo(annotation=Union[Ausschreibungstyp, NoneType], required=False, alias='ausschreibungstyp', alias_priority=1), 'bindefrist': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='bindefrist', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_kostenpflichtig': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istKostenpflichtig', alias_priority=1), 'lose': FieldInfo(annotation=Union[list[Ausschreibungslos], NoneType], required=False, alias='lose', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.AUSSCHREIBUNG: 'AUSSCHREIBUNG'>, alias='_typ', alias_priority=2), 'veroeffentlichungszeitpunkt': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='veroeffentlichungszeitpunkt', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'webseite': FieldInfo(annotation=Union[str, NoneType], required=False, alias='webseite', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.buendelvertrag module
Contains Buendelvertrag class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.buendelvertrag.Buendelvertrag(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.BUENDELVERTRAG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, vertragsnummer: str | None = None, vertragsart: Vertragsart | None = None, vertragsstatus: Vertragsstatus | None = None, sparte: Sparte | None = None, vertragsbeginn: datetime | None = None, vertragsende: datetime | None = None, vertragspartner1: Geschaeftspartner | None = None, vertragspartner2: Geschaeftspartner | None = None, einzelvertraege: list[Vertrag] | None = None, vertragskonditionen: list[Vertragskonditionen] | None = None, unterzeichnervp1: list[Unterschrift] | None = None, unterzeichnervp2: list[Unterschrift] | None = None, beschreibung: str | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektAbbildung eines Bündelvertrags. Es handelt sich hierbei um eine Liste von Einzelverträgen, die in einem Vertragsobjekt gebündelt sind.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'beschreibung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='beschreibung', alias_priority=1), 'einzelvertraege': FieldInfo(annotation=Union[list[Vertrag], NoneType], required=False, alias='einzelvertraege', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.BUENDELVERTRAG: 'BUENDELVERTRAG'>, alias='_typ', alias_priority=2), 'unterzeichnervp1': FieldInfo(annotation=Union[list[Unterschrift], NoneType], required=False, alias='unterzeichnervp1', alias_priority=1), 'unterzeichnervp2': FieldInfo(annotation=Union[list[Unterschrift], NoneType], required=False, alias='unterzeichnervp2', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragsart': FieldInfo(annotation=Union[Vertragsart, NoneType], required=False, alias='vertragsart', alias_priority=1), 'vertragsbeginn': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='vertragsbeginn', alias_priority=1), 'vertragsende': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='vertragsende', alias_priority=1), 'vertragskonditionen': FieldInfo(annotation=Union[list[Vertragskonditionen], NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'vertragsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='vertragsnummer', alias_priority=1), 'vertragspartner1': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='vertragspartner1', alias_priority=1), 'vertragspartner2': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='vertragspartner2', alias_priority=1), 'vertragsstatus': FieldInfo(annotation=Union[Vertragsstatus, NoneType], required=False, alias='vertragsstatus', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- unterzeichnervp1: list[Unterschrift] | None
Unterzeichner des Vertragspartners1
- unterzeichnervp2: list[Unterschrift] | None
Unterzeichner des Vertragspartners2
- vertragsart: Vertragsart | None
Hier ist festgelegt, um welche Art von Vertrag es sich handelt. Z.B. Netznutzungvertrag
- vertragsende: datetime | None
Gibt an, wann der Vertrag (voraussichtlich) endet oder beendet wurde (exklusiv)
- vertragskonditionen: list[Vertragskonditionen] | None
Festlegungen zu Laufzeiten und Kündigungsfristen
- vertragspartner1: Geschaeftspartner | None
Der “erstgenannte” Vertragspartner. In der Regel der Aussteller des Vertrags. Beispiel: “Vertrag zwischen Vertagspartner 1 …”
- vertragspartner2: Geschaeftspartner | None
Der “zweitgenannte” Vertragspartner. In der Regel der Empfänger des Vertrags. Beispiel “Vertrag zwischen Vertagspartner 1 und Vertragspartner 2”
- vertragsstatus: Vertragsstatus | None
Gibt den Status des Vertrages an
bo4e.bo.energiemenge module
Contains Energiemenge class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.energiemenge.Energiemenge(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.ENERGIEMENGE, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, lokationsId: str | None = None, lokationstyp: Lokationstyp | None = None, energieverbrauch: list[Verbrauch] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektAbbildung von Mengen, die Lokationen zugeordnet sind
- lokations_id: str | None
Eindeutige Nummer der Marktlokation bzw. der Messlokation, zu der die Energiemenge gehört
- lokationstyp: Lokationstyp | None
Gibt an, ob es sich um eine Markt- oder Messlokation handelt
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'energieverbrauch': FieldInfo(annotation=Union[list[Verbrauch], NoneType], required=False, alias='energieverbrauch', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'lokations_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='lokationsId', alias_priority=1), 'lokationstyp': FieldInfo(annotation=Union[Lokationstyp, NoneType], required=False, alias='lokationstyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.ENERGIEMENGE: 'ENERGIEMENGE'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.fremdkosten module
Contains Fremdkosten class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.fremdkosten.Fremdkosten(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.FREMDKOSTEN, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, gueltigkeit: Zeitraum | None = None, summeKosten: Betrag | None = None, kostenbloecke: list[Fremdkostenblock] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektMit diesem BO werden die Fremdkosten, beispielsweise für eine Angebotserstellung oder eine Rechnungsprüfung, übertragen. Die Fremdkosten enthalten dabei alle Kostenblöcke, die von anderen Marktteilnehmern oder Instanzen erhoben werden.
- kostenbloecke: list[Fremdkostenblock] | None
Netzkosten, Umlagen, Steuern etc
- Type:
In Kostenblöcken werden Kostenpositionen zusammengefasst. Beispiele
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kostenbloecke': FieldInfo(annotation=Union[list[Fremdkostenblock], NoneType], required=False, alias='kostenbloecke', alias_priority=1), 'summe_kosten': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='summeKosten', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.FREMDKOSTEN: 'FREMDKOSTEN'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.geraet module
Contains Geraet class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.geraet.Geraet(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.GERAET, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, geraetenummer: str | None = None, bezeichnung: str | None = None, geraeteklasse: Geraeteklasse | None = None, geraetetyp: Geraetetyp | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektMit diesem BO werden alle Geräte modelliert, die keine Zähler sind.
Hint
- geraeteklasse: Geraeteklasse | None
Die übergreifende Klasse eines Geräts, beispielsweise Wandler
- geraetetyp: Geraetetyp | None
Der speziellere Typ eines Gerätes, beispielsweise Stromwandler
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'geraeteklasse': FieldInfo(annotation=Union[Geraeteklasse, NoneType], required=False, alias='geraeteklasse', alias_priority=1), 'geraetenummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='geraetenummer', alias_priority=1), 'geraetetyp': FieldInfo(annotation=Union[Geraetetyp, NoneType], required=False, alias='geraetetyp', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.GERAET: 'GERAET'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.geschaeftsobjekt module
- class bo4e.bo.geschaeftsobjekt.Geschaeftsobjekt(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.GESCHAEFTSOBJEKT, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, **extra_data: Any)[source]
Bases:
BaseModelDas BO Geschäftsobjekt ist der Master für alle Geschäftsobjekte. Alle Attribute, die hier in diesem BO enthalten sind, werden an alle BOs vererbt.
- id: str | None
Eine generische ID, die für eigene Zwecke genutzt werden kann. Z.B. könnten hier UUIDs aus einer Datenbank stehen oder URLs zu einem Backend-System.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.GESCHAEFTSOBJEKT: 'GESCHAEFTSOBJEKT'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- zusatz_attribute: list[ZusatzAttribut] | None
bo4e.bo.geschaeftspartner module
Contains Geschaeftspartner class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.geschaeftspartner.Geschaeftspartner(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.GESCHAEFTSPARTNER, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, name1: str | None = None, istGewerbe: bool | None = None, geschaeftspartnerrolle: list[Geschaeftspartnerrolle] | None = None, anrede: Anrede | None = None, name2: str | None = None, name3: str | None = None, hrnummer: str | None = None, amtsgericht: str | None = None, kontaktweg: list[Kontaktart] | None = None, umsatzsteuerId: str | None = None, glaeubigerId: str | None = None, eMailAdresse: str | None = None, website: str | None = None, partneradresse: Adresse | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektMit diesem Objekt können Geschäftspartner übertragen werden. Sowohl Unternehmen, als auch Privatpersonen können Geschäftspartner sein. Hinweis: Marktteilnehmer haben ein eigenes BO, welches sich von diesem BO ableitet. Hier sollte daher keine Zuordnung zu Marktrollen erfolgen.
- amtsgericht: str | None
Amtsgericht bzw Handelsregistergericht, das die Handelsregisternummer herausgegeben hat
- e_mail_adresse: str | None
E-Mail-Adresse des Ansprechpartners. Z.B. “info@hochfrequenz.de”
- geschaeftspartnerrolle: list[Geschaeftspartnerrolle] | None
Rollen, die die Geschäftspartner inne haben (z.B. Interessent, Kunde)
- glaeubiger_id: str | None
Die Gläubiger-ID welche im Zahlungsverkehr verwendet wird; Z.B. “DE 47116789”
- ist_gewerbe: bool | None
Kennzeichnung ob es sich um einen Gewerbe/Unternehmen (istGewerbe = true) oder eine Privatperson handelt. (istGewerbe = false)
- kontaktweg: list[Kontaktart] | None
Bevorzugte Kontaktwege des Geschäftspartners
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'amtsgericht': FieldInfo(annotation=Union[str, NoneType], required=False, alias='amtsgericht', alias_priority=1), 'anrede': FieldInfo(annotation=Union[Anrede, NoneType], required=False, alias='anrede', alias_priority=1), 'e_mail_adresse': FieldInfo(annotation=Union[str, NoneType], required=False, alias='eMailAdresse', alias_priority=1), 'geschaeftspartnerrolle': FieldInfo(annotation=Union[list[Geschaeftspartnerrolle], NoneType], required=False, alias='geschaeftspartnerrolle', alias_priority=1), 'glaeubiger_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='glaeubigerId', alias_priority=1), 'hrnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='hrnummer', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_gewerbe': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istGewerbe', alias_priority=1), 'kontaktweg': FieldInfo(annotation=Union[list[Kontaktart], NoneType], required=False, alias='kontaktweg', alias_priority=1), 'name1': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name1', alias_priority=1), 'name2': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name2', alias_priority=1), 'name3': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name3', alias_priority=1), 'partneradresse': FieldInfo(annotation=Union[Adresse, NoneType], required=False, alias='partneradresse', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.GESCHAEFTSPARTNER: 'GESCHAEFTSPARTNER'>, alias='_typ', alias_priority=2), 'umsatzsteuer_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='umsatzsteuerId', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- name1: str | None
Erster Teil des Namens. Hier kann der Firmenname oder bei Privatpersonen beispielsweise der Nachname dagestellt werden. Beispiele: Yellow Strom GmbH oder Hagen
- name2: str | None
Zweiter Teil des Namens. Hier kann der eine Erweiterung zum Firmennamen oder bei Privatpersonen beispielsweise der Vorname dagestellt werden. Beispiele: Bereich Süd oder Nina
bo4e.bo.kosten module
Contains Kosten class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.kosten.Kosten(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.KOSTEN, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, kostenklasse: Kostenklasse | None = None, gueltigkeit: Zeitraum | None = None, kostenbloecke: list[Kostenblock] | None = None, summeKosten: list[Betrag] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektDieses BO wird zur Übertagung von hierarchischen Kostenstrukturen verwendet. Die Kosten werden dabei in Kostenblöcke und diese wiederum in Kostenpositionen strukturiert.
Hint
- kostenbloecke: list[Kostenblock] | None
Netzkosten, Umlagen, Steuern etc
- Type:
In Kostenblöcken werden Kostenpositionen zusammengefasst. Beispiele
- kostenklasse: Kostenklasse | None
Klasse der Kosten, beispielsweise Fremdkosten
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kostenbloecke': FieldInfo(annotation=Union[list[Kostenblock], NoneType], required=False, alias='kostenbloecke', alias_priority=1), 'kostenklasse': FieldInfo(annotation=Union[Kostenklasse, NoneType], required=False, alias='kostenklasse', alias_priority=1), 'summe_kosten': FieldInfo(annotation=Union[list[Betrag], NoneType], required=False, alias='summeKosten', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.KOSTEN: 'KOSTEN'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.lastgang module
Contains Lastgang class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.lastgang.Lastgang(*, version: str | None = None, _typ: Typ | None = Typ.LASTGANG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, sparte: Sparte | None = None, messgroesse: Mengeneinheit | None = None, marktlokation: Marktlokation | None = None, messlokation: Messlokation | None = None, werte: list[Zeitreihenwert] | None = None, obisKennzahl: str | None = None, zeitIntervallLaenge: Menge | None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektModell zur Abbildung eines Lastganges; In diesem Modell werden die Messwerte mit einem vollständigen Zeitintervall (zeit_intervall_laenge) angegeben und es bietet daher eine hohe Flexibilität in der Übertragung jeglicher zeitlich veränderlicher Messgrössen.
Hint
- marktlokation: Marktlokation | None
Marktlokation, zu der der Lastgang gehört
- messgroesse: Mengeneinheit | None
Definition der gemessenen Größe anhand ihrer Einheit
- messlokation: Messlokation | None
Marktlokation, zu der der Lastgang gehört
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'marktlokation': FieldInfo(annotation=Union[Marktlokation, NoneType], required=False, alias='marktlokation', alias_priority=1), 'messgroesse': FieldInfo(annotation=Union[Mengeneinheit, NoneType], required=False, alias='messgroesse', alias_priority=1), 'messlokation': FieldInfo(annotation=Union[Messlokation, NoneType], required=False, alias='messlokation', alias_priority=1), 'obis_kennzahl': FieldInfo(annotation=Union[Annotated[str, StringConstraints], NoneType], required=False, alias='obisKennzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.LASTGANG: 'LASTGANG'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, alias='version', alias_priority=1), 'werte': FieldInfo(annotation=Union[list[Zeitreihenwert], NoneType], required=False, alias='werte', alias_priority=1), 'zeit_intervall_laenge': FieldInfo(annotation=Union[Menge, NoneType], required=True, alias='zeitIntervallLaenge', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- obis_kennzahl: str | None
1.8.1’
- Type:
Die OBIS-Kennzahl für den Wert, die festlegt, welche Größe mit dem Stand gemeldet wird, z.B. ‘1-0
- werte: list[Zeitreihenwert] | None
Die im Lastgang enthaltenen Messwerte
bo4e.bo.marktlokation module
Contains Marktlokation class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.marktlokation.Marktlokation(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.MARKTLOKATION, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, marktlokationsId: str | None = None, sparte: Sparte | None = None, energierichtung: Energierichtung | None = None, bilanzierungsmethode: Bilanzierungsmethode | None = None, netzebene: Netzebene | None = None, verbrauchsart: Verbrauchsart | None = None, istUnterbrechbar: bool | None = None, netzbetreibercodenr: str | None = None, gebietstyp: Gebiettyp | None = None, netzgebietsnr: str | None = None, bilanzierungsgebiet: str | None = None, grundversorgercodenr: str | None = None, gasqualitaet: Gasqualitaet | None = None, endkunde: Geschaeftspartner | None = None, zugehoerigeMesslokation: Messlokationszuordnung | None = None, lokationsadresse: Adresse | None = None, geoadresse: Geokoordinaten | None = None, katasterinformation: Katasteradresse | None = None, kundengruppen: list[Kundentyp] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektObject containing information about a Marktlokation
- bilanzierungsgebiet: str | None
Bilanzierungsgebiet, dem das Netzgebiet zugeordnet ist - im Falle eines Strom Netzes
- bilanzierungsmethode: Bilanzierungsmethode | None
Die Bilanzierungsmethode, RLM oder SLP
- endkunde: Geschaeftspartner | None
Geschäftspartner, dem diese Marktlokation gehört
- energierichtung: Energierichtung | None
Kennzeichnung, ob Energie eingespeist oder entnommen (ausgespeist) wird
- gasqualitaet: Gasqualitaet | None
Die Gasqualität in diesem Netzgebiet. H-Gas oder L-Gas. Im Falle eines Gas-Netzes
- geoadresse: Geokoordinaten | None
Alternativ zu einer postalischen Adresse kann hier ein Ort mittels Geokoordinaten angegeben werden (z.B. zur Identifikation von Sendemasten).
- grundversorgercodenr: str | None
Codenummer des Grundversorgers, der für diese Marktlokation zuständig ist
- katasterinformation: Katasteradresse | None
Alternativ zu einer postalischen Adresse und Geokoordinaten kann hier eine Ortsangabe mittels Gemarkung und Flurstück erfolgen.
- lokationsadresse: Adresse | None
Die Adresse, an der die Energie-Lieferung oder -Einspeisung erfolgt
- marktlokations_id: str | None
Identifikationsnummer einer Marktlokation, an der Energie entweder verbraucht, oder erzeugt wird.
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bilanzierungsgebiet': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bilanzierungsgebiet', alias_priority=1), 'bilanzierungsmethode': FieldInfo(annotation=Union[Bilanzierungsmethode, NoneType], required=False, alias='bilanzierungsmethode', alias_priority=1), 'endkunde': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='endkunde', alias_priority=1), 'energierichtung': FieldInfo(annotation=Union[Energierichtung, NoneType], required=False, alias='energierichtung', alias_priority=1), 'gasqualitaet': FieldInfo(annotation=Union[Gasqualitaet, NoneType], required=False, alias='gasqualitaet', alias_priority=1), 'gebietstyp': FieldInfo(annotation=Union[Gebiettyp, NoneType], required=False, alias='gebietstyp', alias_priority=1), 'geoadresse': FieldInfo(annotation=Union[Geokoordinaten, NoneType], required=False, alias='geoadresse', alias_priority=1), 'grundversorgercodenr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='grundversorgercodenr', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_unterbrechbar': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istUnterbrechbar', alias_priority=1), 'katasterinformation': FieldInfo(annotation=Union[Katasteradresse, NoneType], required=False, alias='katasterinformation', alias_priority=1), 'kundengruppen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundengruppen', alias_priority=1), 'lokationsadresse': FieldInfo(annotation=Union[Adresse, NoneType], required=False, alias='lokationsadresse', alias_priority=1), 'marktlokations_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='marktlokationsId', alias_priority=1), 'netzbetreibercodenr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='netzbetreibercodenr', alias_priority=1), 'netzebene': FieldInfo(annotation=Union[Netzebene, NoneType], required=False, alias='netzebene', alias_priority=1), 'netzgebietsnr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='netzgebietsnr', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.MARKTLOKATION: 'MARKTLOKATION'>, alias='_typ', alias_priority=2), 'verbrauchsart': FieldInfo(annotation=Union[Verbrauchsart, NoneType], required=False, alias='verbrauchsart', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zugehoerige_messlokation': FieldInfo(annotation=Union[Messlokationszuordnung, NoneType], required=False, alias='zugehoerigeMesslokation', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- netzbetreibercodenr: str | None
Codenummer des Netzbetreibers, an dessen Netz diese Marktlokation angeschlossen ist.
- netzebene: Netzebene | None
Netzebene, in der der Bezug der Energie erfolgt. Bei Strom Spannungsebene der Lieferung, bei Gas Druckstufe. Beispiel Strom: Niederspannung Beispiel Gas: Niederdruck.
- verbrauchsart: Verbrauchsart | None
Verbrauchsart der Marktlokation.
- zugehoerige_messlokation: Messlokationszuordnung | None
Aufzählung der Messlokationen, die zu dieser Marktlokation gehören. Es können 3 verschiedene Konstrukte auftreten:
Beziehung 1 : 0 : Hier handelt es sich um Pauschalanlagen ohne Messung. D.h. die Verbrauchsdaten sind direkt über die Marktlokation abgreifbar. Beziehung 1 : 1 : Das ist die Standard-Beziehung für die meisten Fälle. In diesem Fall gibt es zu einer Marktlokation genau eine Messlokation. Beziehung 1 : N : Hier liegt beispielsweise eine Untermessung vor. Der Verbrauch einer Marklokation berechnet sich hier aus mehreren Messungen.
Es gibt praktisch auch noch die Beziehung N : 1, beispielsweise bei einer Zweirichtungsmessung bei der durch eine Messeinrichtung die Messung sowohl für die Einspreiseseite als auch für die Aussspeiseseite erfolgt. Da Abrechnung und Bilanzierung jedoch für beide Marktlokationen getrennt erfolgt, werden nie beide Marktlokationen gemeinsam betrachtet. Daher lässt sich dieses Konstrukt auf zwei 1:1-Beziehung zurückführen, wobei die Messlokation in beiden Fällen die gleiche ist.
In den Zuordnungen sind ist die arithmetische Operation mit der der Verbrauch einer Messlokation zum Verbrauch einer Marktlokation beitrögt mit aufgeführt. Der Standard ist hier die Addition.
bo4e.bo.marktteilnehmer module
Contains Marktteilnehmer class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.marktteilnehmer.Marktteilnehmer(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.MARKTTEILNEHMER, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, name1: str | None = None, istGewerbe: bool | None = None, geschaeftspartnerrolle: list[Geschaeftspartnerrolle] | None = None, anrede: Anrede | None = None, name2: str | None = None, name3: str | None = None, hrnummer: str | None = None, amtsgericht: str | None = None, kontaktweg: list[Kontaktart] | None = None, umsatzsteuerId: str | None = None, glaeubigerId: str | None = None, eMailAdresse: str | None = None, website: str | None = None, partneradresse: Adresse | None = None, marktrolle: Marktrolle | None = None, rollencodenummer: str | None = None, rollencodetyp: Rollencodetyp | None = None, sparte: Sparte | None = None, makoadresse: str | None = None, **extra_data: Any)[source]
Bases:
GeschaeftspartnerObjekt zur Aufnahme der Information zu einem Marktteilnehmer
- makoadresse: str | None
1-Kommunikationsadresse des Marktteilnehmers; Diese wird in der Marktkommunikation verwendet.
- Type:
Die 1
- marktrolle: Marktrolle | None
Gibt im Klartext die Bezeichnung der Marktrolle an
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'amtsgericht': FieldInfo(annotation=Union[str, NoneType], required=False, alias='amtsgericht', alias_priority=1), 'anrede': FieldInfo(annotation=Union[Anrede, NoneType], required=False, alias='anrede', alias_priority=1), 'e_mail_adresse': FieldInfo(annotation=Union[str, NoneType], required=False, alias='eMailAdresse', alias_priority=1), 'geschaeftspartnerrolle': FieldInfo(annotation=Union[list[Geschaeftspartnerrolle], NoneType], required=False, alias='geschaeftspartnerrolle', alias_priority=1), 'glaeubiger_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='glaeubigerId', alias_priority=1), 'hrnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='hrnummer', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_gewerbe': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istGewerbe', alias_priority=1), 'kontaktweg': FieldInfo(annotation=Union[list[Kontaktart], NoneType], required=False, alias='kontaktweg', alias_priority=1), 'makoadresse': FieldInfo(annotation=Union[str, NoneType], required=False, alias='makoadresse', alias_priority=1), 'marktrolle': FieldInfo(annotation=Union[Marktrolle, NoneType], required=False, alias='marktrolle', alias_priority=1), 'name1': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name1', alias_priority=1), 'name2': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name2', alias_priority=1), 'name3': FieldInfo(annotation=Union[str, NoneType], required=False, alias='name3', alias_priority=1), 'partneradresse': FieldInfo(annotation=Union[Adresse, NoneType], required=False, alias='partneradresse', alias_priority=1), 'rollencodenummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='rollencodenummer', alias_priority=1), 'rollencodetyp': FieldInfo(annotation=Union[Rollencodetyp, NoneType], required=False, alias='rollencodetyp', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.MARKTTEILNEHMER: 'MARKTTEILNEHMER'>, alias='_typ', alias_priority=2), 'umsatzsteuer_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='umsatzsteuerId', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- rollencodetyp: Rollencodetyp | None
Gibt den Typ des Codes an
bo4e.bo.messlokation module
Contains Messlokation class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.messlokation.Messlokation(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.MESSLOKATION, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, messlokationsId: str | None = None, sparte: Sparte | None = None, netzebeneMessung: Netzebene | None = None, messgebietnr: str | None = None, geraete: list[Geraet] | None = None, messdienstleistung: list[Dienstleistung] | None = None, messlokationszaehler: list[Zaehler] | None = None, grundzustaendigerMsbCodenr: str | None = None, grundzustaendigerMsbimCodenr: str | None = None, messadresse: Adresse | None = None, geoadresse: Geokoordinaten | None = None, katasterinformation: Katasteradresse | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektObject containing information about a Messlokation
- geoadresse: Geokoordinaten | None
Alternativ zu einer postalischen Adresse kann hier ein Ort mittels Geokoordinaten angegeben werden (z.B. zur Identifikation von Sendemasten).
- grundzustaendiger_msb_codenr: str | None
Codenummer des grundzuständigen Messstellenbetreibers, der für diese Messlokation zuständig ist. (Dieser ist immer dann Messstellenbetreiber, wenn kein anderer MSB die Einrichtungen an der Messlokation betreibt.)
- grundzustaendiger_msbim_codenr: str | None
Codenummer des grundzuständigen Messstellenbetreibers für intelligente Messsysteme, der für diese Messlokation zuständig ist. (Dieser ist immer dann Messstellenbetreiber, wenn kein anderer MSB die Einrichtungen an der Messlokation betreibt.)
- katasterinformation: Katasteradresse | None
Alternativ zu einer postalischen Adresse und Geokoordinaten kann hier eine Ortsangabe mittels Gemarkung und Flurstück erfolgen.
- messadresse: Adresse | None
Die Adresse, an der die Messeinrichtungen zu finden sind. (Nur angeben, wenn diese von der Adresse der Marktlokation abweicht.)
- messdienstleistung: list[Dienstleistung] | None
Liste der Messdienstleistungen, die zu dieser Messstelle gehört
- messlokations_id: str | None
Die Messlokations-Identifikation; Das ist die frühere Zählpunktbezeichnung
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'geoadresse': FieldInfo(annotation=Union[Geokoordinaten, NoneType], required=False, alias='geoadresse', alias_priority=1), 'geraete': FieldInfo(annotation=Union[list[Geraet], NoneType], required=False, alias='geraete', alias_priority=1), 'grundzustaendiger_msb_codenr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='grundzustaendigerMsbCodenr', alias_priority=1), 'grundzustaendiger_msbim_codenr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='grundzustaendigerMsbimCodenr', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'katasterinformation': FieldInfo(annotation=Union[Katasteradresse, NoneType], required=False, alias='katasterinformation', alias_priority=1), 'messadresse': FieldInfo(annotation=Union[Adresse, NoneType], required=False, alias='messadresse', alias_priority=1), 'messdienstleistung': FieldInfo(annotation=Union[list[Dienstleistung], NoneType], required=False, alias='messdienstleistung', alias_priority=1), 'messgebietnr': FieldInfo(annotation=Union[str, NoneType], required=False, alias='messgebietnr', alias_priority=1), 'messlokations_id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='messlokationsId', alias_priority=1), 'messlokationszaehler': FieldInfo(annotation=Union[list[Zaehler], NoneType], required=False, alias='messlokationszaehler', alias_priority=1), 'netzebene_messung': FieldInfo(annotation=Union[Netzebene, NoneType], required=False, alias='netzebeneMessung', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.MESSLOKATION: 'MESSLOKATION'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.preisblatt module
Contains Preisblatt class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblatt.Preisblatt(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATT, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektDas allgemeine Modell zur Abbildung von Preisen; Davon abgeleitet können, über die Zuordnung identifizierender Merkmale, spezielle Preisblatt-Varianten modelliert werden.
Die jeweiligen Sätze von Merkmalen sind in der Grafik ergänzt worden und stellen jeweils eine Ausprägung für die verschiedenen Anwendungsfälle der Preisblätter dar.
- herausgeber: Marktteilnehmer | None
Der Netzbetreiber, der die Preise veröffentlicht hat
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATT: 'PREISBLATT'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- preispositionen: list[Preisposition] | None
Die einzelnen Positionen, die mit dem Preisblatt abgerechnet werden können. Z.B. Arbeitspreis, Grundpreis etc
- preisstatus: Preisstatus | None
Merkmal, das anzeigt, ob es sich um vorläufige oder endgültige Preise handelt
bo4e.bo.preisblattdienstleistung module
Contains PreisblattDienstleistung class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblattdienstleistung.PreisblattDienstleistung(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATTDIENSTLEISTUNG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, bilanzierungsmethode: Bilanzierungsmethode | None = None, basisdienstleistung: Dienstleistungstyp | None = None, geraetedetails: Geraet | None = None, inklusiveDienstleistungen: list[Dienstleistungstyp] | None = None, **extra_data: Any)[source]
Bases:
PreisblattVariante des Preisblattmodells zur Abbildung der Preise für wahlfreie Dienstleistungen
- basisdienstleistung: Dienstleistungstyp | None
Dienstleistung, für die der Preis abgebildet wird, z.B. Sperrung/Entsperrung
- bilanzierungsmethode: Bilanzierungsmethode | None
Die Preise gelten für Marktlokationen der angebebenen Bilanzierungsmethode
- geraetedetails: Geraet | None
Hier kann der Preis auf bestimmte Geräte eingegrenzt werden. Z.B. auf die Zählergröße
- inklusive_dienstleistungen: list[Dienstleistungstyp] | None
Weitere Dienstleistungen, die im Preis enthalten sind
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'basisdienstleistung': FieldInfo(annotation=Union[Dienstleistungstyp, NoneType], required=False, alias='basisdienstleistung', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'bilanzierungsmethode': FieldInfo(annotation=Union[Bilanzierungsmethode, NoneType], required=False, alias='bilanzierungsmethode', alias_priority=1), 'geraetedetails': FieldInfo(annotation=Union[Geraet, NoneType], required=False, alias='geraetedetails', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'inklusive_dienstleistungen': FieldInfo(annotation=Union[list[Dienstleistungstyp], NoneType], required=False, alias='inklusiveDienstleistungen', alias_priority=1), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATTDIENSTLEISTUNG: 'PREISBLATTDIENSTLEISTUNG'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.preisblatthardware module
Contains PreisblattHardware class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblatthardware.PreisblattHardware(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATTHARDWARE, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, bilanzierungsmethode: Bilanzierungsmethode | None = None, messebene: Netzebene | None = None, basisgeraet: Geraet | None = None, inklusiveDienstleistungen: list[Dienstleistungstyp] | None = None, inklusiveGeraete: list[Geraet] | None = None, **extra_data: Any)[source]
Bases:
PreisblattVariante des Preisblattmodells zur Abbildung der Preise für zusätzliche Hardware
- bilanzierungsmethode: Bilanzierungsmethode | None
Die Preise gelten für Marktlokationen der angebebenen Bilanzierungsmethode
- inklusive_dienstleistungen: list[Dienstleistungstyp] | None
Im Preis sind die hier angegebenen Dienstleistungen enthalten, z.B. Jährliche Ablesung
- inklusive_geraete: list[Geraet] | None
Im Preis sind die hier angegebenen Geräte mit enthalten, z.B. ein Wandler
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'basisgeraet': FieldInfo(annotation=Union[Geraet, NoneType], required=False, alias='basisgeraet', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'bilanzierungsmethode': FieldInfo(annotation=Union[Bilanzierungsmethode, NoneType], required=False, alias='bilanzierungsmethode', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'inklusive_dienstleistungen': FieldInfo(annotation=Union[list[Dienstleistungstyp], NoneType], required=False, alias='inklusiveDienstleistungen', alias_priority=1), 'inklusive_geraete': FieldInfo(annotation=Union[list[Geraet], NoneType], required=False, alias='inklusiveGeraete', alias_priority=1), 'messebene': FieldInfo(annotation=Union[Netzebene, NoneType], required=False, alias='messebene', alias_priority=1), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATTHARDWARE: 'PREISBLATTHARDWARE'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.preisblattkonzessionsabgabe module
Contains PreisblattKonzessionsabgabe class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblattkonzessionsabgabe.PreisblattKonzessionsabgabe(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATTKONZESSIONSABGABE, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, kundengruppeKA: KundengruppeKA | None = None, **extra_data: Any)[source]
Bases:
PreisblattDie Variante des Preisblattmodells zur Abbildung von allgemeinen Abgaben
- kundengruppe_k_a: KundengruppeKA | None
Kundegruppe anhand derer die Höhe der Konzessionabgabe festgelegt ist
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundengruppe_k_a': FieldInfo(annotation=Union[KundengruppeKA, NoneType], required=False, alias='kundengruppeKA', alias_priority=1), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATTKONZESSIONSABGABE: 'PREISBLATTKONZESSIONSABGABE'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.preisblattmessung module
Contains PreisblattMessung class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblattmessung.PreisblattMessung(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATTMESSUNG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, bilanzierungsmethode: Bilanzierungsmethode | None = None, messebene: Netzebene | None = None, zaehler: Zaehler | None = None, inklusiveDienstleistungen: list[Dienstleistungstyp] | None = None, inklusiveGeraete: list[Geraet] | None = None, **extra_data: Any)[source]
Bases:
PreisblattVariante des Preisblattmodells zur Abbildung der Preise des Messstellenbetriebs und damit verbundener Leistungen
- bilanzierungsmethode: Bilanzierungsmethode | None
Die Preise gelten für Marktlokationen der angebebenen Bilanzierungsmethode
- inklusive_dienstleistungen: list[Dienstleistungstyp] | None
Im Preis sind die hier angegebenen Dienstleistungen enthalten, z.B. Jährliche Ablesung
- inklusive_geraete: list[Geraet] | None
Im Preis sind die hier angegebenen Geräte mit enthalten, z.B. ein Wandler
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'bilanzierungsmethode': FieldInfo(annotation=Union[Bilanzierungsmethode, NoneType], required=False, alias='bilanzierungsmethode', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'inklusive_dienstleistungen': FieldInfo(annotation=Union[list[Dienstleistungstyp], NoneType], required=False, alias='inklusiveDienstleistungen', alias_priority=1), 'inklusive_geraete': FieldInfo(annotation=Union[list[Geraet], NoneType], required=False, alias='inklusiveGeraete', alias_priority=1), 'messebene': FieldInfo(annotation=Union[Netzebene, NoneType], required=False, alias='messebene', alias_priority=1), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATTMESSUNG: 'PREISBLATTMESSUNG'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zaehler': FieldInfo(annotation=Union[Zaehler, NoneType], required=False, alias='zaehler', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.preisblattnetznutzung module
Contains PreisblattNetnutzung class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.preisblattnetznutzung.PreisblattNetznutzung(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.PREISBLATTNETZNUTZUNG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, sparte: Sparte | None = None, preisstatus: Preisstatus | None = None, gueltigkeit: Zeitraum | None = None, preispositionen: list[Preisposition] | None = None, herausgeber: Marktteilnehmer | None = None, bilanzierungsmethode: Bilanzierungsmethode | None = None, netzebene: Netzebene | None = None, kundengruppe: Kundengruppe | None = None, **extra_data: Any)[source]
Bases:
PreisblattDie Variante des Preisblattmodells zur Abbildung der Netznutzungspreise
- bilanzierungsmethode: Bilanzierungsmethode | None
Die Preise gelten für Marktlokationen der angebebenen Bilanzierungsmethode
- kundengruppe: Kundengruppe | None
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'bilanzierungsmethode': FieldInfo(annotation=Union[Bilanzierungsmethode, NoneType], required=False, alias='bilanzierungsmethode', alias_priority=1), 'gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='gueltigkeit', alias_priority=1), 'herausgeber': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='herausgeber', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundengruppe': FieldInfo(annotation=Union[Kundengruppe, NoneType], required=False, alias='kundengruppe', alias_priority=1), 'netzebene': FieldInfo(annotation=Union[Netzebene, NoneType], required=False, alias='netzebene', alias_priority=1), 'preispositionen': FieldInfo(annotation=Union[list[Preisposition], NoneType], required=False, alias='preispositionen', alias_priority=1), 'preisstatus': FieldInfo(annotation=Union[Preisstatus, NoneType], required=False, alias='preisstatus', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.PREISBLATTNETZNUTZUNG: 'PREISBLATTNETZNUTZUNG'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.rechnung module
Contains Rechnung class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.rechnung.Rechnung(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.RECHNUNG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, istStorno: bool | None = None, rechnungsnummer: str | None = None, rechnungsdatum: datetime | None = None, faelligkeitsdatum: datetime | None = None, rechnungstyp: Rechnungstyp | None = None, rechnungsperiode: Zeitraum | None = None, rechnungsersteller: Geschaeftspartner | None = None, rechnungsempfaenger: Geschaeftspartner | None = None, gesamtnetto: Betrag | None = None, gesamtsteuer: Betrag | None = None, gesamtbrutto: Betrag | None = None, zuZahlen: Betrag | None = None, rechnungspositionen: list[Rechnungsposition] | None = None, rechnungstitel: str | None = None, rechnungsstatus: Rechnungsstatus | None = None, originalRechnungsnummer: str | None = None, vorausgezahlt: Betrag | None = None, rabattBrutto: Betrag | None = None, steuerbetraege: list[Steuerbetrag] | None = None, sparte: Sparte | None = None, netznutzungrechnungsart: NetznutzungRechnungsart | None = None, netznutzungrechnungstyp: NetznutzungRechnungstyp | None = None, istOriginal: bool | None = None, istSimuliert: bool | None = None, marktlokation: Marktlokation | None = None, messlokation: Messlokation | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektModell für die Abbildung von Rechnungen und Netznutzungsrechnungen im Kontext der Energiewirtschaft;
Hint
- ist_original: bool | None
Kennzeichen, ob es sich um ein Original (true) oder eine Kopie handelt (false)
- ist_simuliert: bool | None
Kennzeichen, ob es sich um eine simulierte Rechnung, z.B. zur Rechnungsprüfung handelt
- ist_storno: bool | None
Kennzeichnung, ob es sich um eine Stornorechnung handelt; im Falle “true” findet sich im Attribut “originalrechnungsnummer” die Nummer der Originalrechnung.
- marktlokation: Marktlokation | None
Marktlokation, auf die sich die Rechnung bezieht
- messlokation: Messlokation | None
Messlokation, auf die sich die Rechnung bezieht
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'faelligkeitsdatum': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='faelligkeitsdatum', alias_priority=1), 'gesamtbrutto': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='gesamtbrutto', alias_priority=1), 'gesamtnetto': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='gesamtnetto', alias_priority=1), 'gesamtsteuer': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='gesamtsteuer', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_original': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istOriginal', alias_priority=1), 'ist_simuliert': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istSimuliert', alias_priority=1), 'ist_storno': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istStorno', alias_priority=1), 'marktlokation': FieldInfo(annotation=Union[Marktlokation, NoneType], required=False, alias='marktlokation', alias_priority=1), 'messlokation': FieldInfo(annotation=Union[Messlokation, NoneType], required=False, alias='messlokation', alias_priority=1), 'netznutzungrechnungsart': FieldInfo(annotation=Union[NetznutzungRechnungsart, NoneType], required=False, alias='netznutzungrechnungsart', alias_priority=1), 'netznutzungrechnungstyp': FieldInfo(annotation=Union[NetznutzungRechnungstyp, NoneType], required=False, alias='netznutzungrechnungstyp', alias_priority=1), 'original_rechnungsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='originalRechnungsnummer', alias_priority=1), 'rabatt_brutto': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='rabattBrutto', alias_priority=1), 'rechnungsdatum': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='rechnungsdatum', alias_priority=1), 'rechnungsempfaenger': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='rechnungsempfaenger', alias_priority=1), 'rechnungsersteller': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='rechnungsersteller', alias_priority=1), 'rechnungsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='rechnungsnummer', alias_priority=1), 'rechnungsperiode': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='rechnungsperiode', alias_priority=1), 'rechnungspositionen': FieldInfo(annotation=Union[list[Rechnungsposition], NoneType], required=False, alias='rechnungspositionen', alias_priority=1), 'rechnungsstatus': FieldInfo(annotation=Union[Rechnungsstatus, NoneType], required=False, alias='rechnungsstatus', alias_priority=1), 'rechnungstitel': FieldInfo(annotation=Union[str, NoneType], required=False, alias='rechnungstitel', alias_priority=1), 'rechnungstyp': FieldInfo(annotation=Union[Rechnungstyp, NoneType], required=False, alias='rechnungstyp', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'steuerbetraege': FieldInfo(annotation=Union[list[Steuerbetrag], NoneType], required=False, alias='steuerbetraege', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.RECHNUNG: 'RECHNUNG'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vorausgezahlt': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='vorausgezahlt', alias_priority=1), 'zu_zahlen': FieldInfo(annotation=Union[Betrag, NoneType], required=False, alias='zuZahlen', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- netznutzungrechnungsart: NetznutzungRechnungsart | None
Aus der INVOIC entnommen, befüllt wenn es sich um eine Netznutzungsrechnung handelt
- netznutzungrechnungstyp: NetznutzungRechnungstyp | None
Aus der INVOIC entnommen, befüllt wenn es sich um eine Netznutzungsrechnung handelt
- original_rechnungsnummer: str | None
Im Falle einer Stornorechnung (storno = true) steht hier die Rechnungsnummer der stornierten Rechnung
- rechnungsempfaenger: Geschaeftspartner | None
Der Aussteller der Rechnung, die Rollencodenummer kennt man über den im Geschäftspartner verlinkten Marktteilnehmer
- rechnungsersteller: Geschaeftspartner | None
Der Aussteller der Rechnung, die Rollencodenummer kennt man über den im Geschäftspartner verlinkten Marktteilnehmer
- rechnungspositionen: list[Rechnungsposition] | None
Die Rechnungspositionen
- rechnungsstatus: Rechnungsstatus | None
Status der Rechnung zur Kennzeichnung des Bearbeitungsstandes
- rechnungstyp: Rechnungstyp | None
Ein kontextbezogender Rechnungstyp, z.B. Netznutzungsrechnung
- steuerbetraege: list[Steuerbetrag] | None
Eine Liste mit Steuerbeträgen pro Steuerkennzeichen/Steuersatz; die Summe dieser Beträge ergibt den Wert für gesamtsteuer.
bo4e.bo.region module
Contains Region class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.region.Region(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.REGION, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, positivListe: list[Regionskriterium] | None = None, negativListe: list[Regionskriterium] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektModellierung einer Region als Menge von Kriterien, die eine Region beschreiben
Hint
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'negativ_liste': FieldInfo(annotation=Union[list[Regionskriterium], NoneType], required=False, alias='negativListe', alias_priority=1), 'positiv_liste': FieldInfo(annotation=Union[list[Regionskriterium], NoneType], required=False, alias='positivListe', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.REGION: 'REGION'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- negativ_liste: list[Regionskriterium] | None
Negativliste der Kriterien zur Definition der Region
- positiv_liste: list[Regionskriterium] | None
Positivliste der Kriterien zur Definition der Region
bo4e.bo.regionaltarif module
Contains Regionaltarif class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.regionaltarif.Regionaltarif(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.REGIONALTARIF, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, anbietername: str | None = None, sparte: Sparte | None = None, kundentypen: list[Kundentyp] | None = None, registeranzahl: Registeranzahl | None = None, tariftyp: Tariftyp | None = None, tarifmerkmale: list[Tarifmerkmal] | None = None, anbieter: Marktteilnehmer | None = None, website: str | None = None, bemerkung: str | None = None, zeitlicheGueltigkeit: Zeitraum | None = None, energiemix: Energiemix | None = None, vertragskonditionen: Vertragskonditionen | None = None, anwendungVon: datetime | None = None, preisstand: datetime | None = None, berechnungsparameter: Tarifberechnungsparameter | None = None, tarifpreise: list[RegionaleTarifpreisposition] | None = None, tarifAufAbschlaege: list[RegionalerAufAbschlag] | None = None, preisgarantien: list[RegionalePreisgarantie] | None = None, tarifeinschraenkung: Tarifeinschraenkung | None = None, **extra_data: Any)[source]
Bases:
Tarifinfo- berechnungsparameter: Tarifberechnungsparameter | None
Für die Berechnung der Kosten sind die hier abgebildeten Parameter heranzuziehen
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anbieter': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='anbieter', alias_priority=1), 'anbietername': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anbietername', alias_priority=1), 'anwendung_von': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='anwendungVon', alias_priority=1), 'bemerkung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bemerkung', alias_priority=1), 'berechnungsparameter': FieldInfo(annotation=Union[Tarifberechnungsparameter, NoneType], required=False, alias='berechnungsparameter', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'energiemix': FieldInfo(annotation=Union[Energiemix, NoneType], required=False, alias='energiemix', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundentypen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundentypen', alias_priority=1), 'preisgarantien': FieldInfo(annotation=Union[list[RegionalePreisgarantie], NoneType], required=False, alias='preisgarantien', alias_priority=1), 'preisstand': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='preisstand', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'tarif_auf_abschlaege': FieldInfo(annotation=Union[list[RegionalerAufAbschlag], NoneType], required=False, alias='tarifAufAbschlaege', alias_priority=1), 'tarifeinschraenkung': FieldInfo(annotation=Union[Tarifeinschraenkung, NoneType], required=False, alias='tarifeinschraenkung', alias_priority=1), 'tarifmerkmale': FieldInfo(annotation=Union[list[Tarifmerkmal], NoneType], required=False, alias='tarifmerkmale', alias_priority=1), 'tarifpreise': FieldInfo(annotation=Union[list[RegionaleTarifpreisposition], NoneType], required=False, alias='tarifpreise', alias_priority=1), 'tariftyp': FieldInfo(annotation=Union[Tariftyp, NoneType], required=False, alias='tariftyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.REGIONALTARIF: 'REGIONALTARIF'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zeitliche_gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='zeitlicheGueltigkeit', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- preisgarantien: list[RegionalePreisgarantie] | None
Festlegung von Garantien für bestimmte Preisanteile
- tarif_auf_abschlaege: list[RegionalerAufAbschlag] | None
Auf- und Abschläge auf die Preise oder Kosten mit regionaler Eingrenzung
- tarifeinschraenkung: Tarifeinschraenkung | None
Die Bedingungen und Einschränkungen unter denen ein Tarif angewendet werden kann
- tarifpreise: list[RegionaleTarifpreisposition] | None
Die festgelegten Preise mit regionaler Eingrenzung, z.B. für Arbeitspreis, Grundpreis etc.
bo4e.bo.standorteigenschaften module
Contains Standorteigenschaften class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.standorteigenschaften.Standorteigenschaften(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.STANDORTEIGENSCHAFTEN, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, eigenschaftenStrom: list[StandorteigenschaftenStrom] | None = None, eigenschaftenGas: StandorteigenschaftenGas | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektModelliert die regionalen und spartenspezifischen Eigenschaften einer gegebenen Adresse.
- eigenschaften_gas: StandorteigenschaftenGas | None
Eigenschaften zur Sparte Gas
- eigenschaften_strom: list[StandorteigenschaftenStrom] | None
Eigenschaften zur Sparte Strom
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'eigenschaften_gas': FieldInfo(annotation=Union[StandorteigenschaftenGas, NoneType], required=False, alias='eigenschaftenGas', alias_priority=1), 'eigenschaften_strom': FieldInfo(annotation=Union[list[StandorteigenschaftenStrom], NoneType], required=False, alias='eigenschaftenStrom', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.STANDORTEIGENSCHAFTEN: 'STANDORTEIGENSCHAFTEN'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.tarif module
Contains Tarif class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.tarif.Tarif(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.TARIF, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, anbietername: str | None = None, sparte: Sparte | None = None, kundentypen: list[Kundentyp] | None = None, registeranzahl: Registeranzahl | None = None, tariftyp: Tariftyp | None = None, tarifmerkmale: list[Tarifmerkmal] | None = None, anbieter: Marktteilnehmer | None = None, website: str | None = None, bemerkung: str | None = None, zeitlicheGueltigkeit: Zeitraum | None = None, energiemix: Energiemix | None = None, vertragskonditionen: Vertragskonditionen | None = None, anwendungVon: datetime | None = None, preisstand: datetime | None = None, berechnungsparameter: Tarifberechnungsparameter | None = None, tarifpreise: list[TarifpreispositionProOrt] | None = None, tarifAufAbschlaege: list[AufAbschlagRegional] | None = None, preisgarantie: Preisgarantie | None = None, tarifeinschraenkung: Tarifeinschraenkung | None = None, **extra_data: Any)[source]
Bases:
TarifinfoAbbildung eines Tarifs mit regionaler Zuordnung von Preisen und Auf- und Abschlägen
Hint
- berechnungsparameter: Tarifberechnungsparameter | None
Für die Berechnung der Kosten sind die hier abgebildeten Parameter heranzuziehen
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anbieter': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='anbieter', alias_priority=1), 'anbietername': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anbietername', alias_priority=1), 'anwendung_von': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='anwendungVon', alias_priority=1), 'bemerkung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bemerkung', alias_priority=1), 'berechnungsparameter': FieldInfo(annotation=Union[Tarifberechnungsparameter, NoneType], required=False, alias='berechnungsparameter', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'energiemix': FieldInfo(annotation=Union[Energiemix, NoneType], required=False, alias='energiemix', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundentypen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundentypen', alias_priority=1), 'preisgarantie': FieldInfo(annotation=Union[Preisgarantie, NoneType], required=False, alias='preisgarantie', alias_priority=1), 'preisstand': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='preisstand', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'tarif_auf_abschlaege': FieldInfo(annotation=Union[list[AufAbschlagRegional], NoneType], required=False, alias='tarifAufAbschlaege', alias_priority=1), 'tarifeinschraenkung': FieldInfo(annotation=Union[Tarifeinschraenkung, NoneType], required=False, alias='tarifeinschraenkung', alias_priority=1), 'tarifmerkmale': FieldInfo(annotation=Union[list[Tarifmerkmal], NoneType], required=False, alias='tarifmerkmale', alias_priority=1), 'tarifpreise': FieldInfo(annotation=Union[list[TarifpreispositionProOrt], NoneType], required=False, alias='tarifpreise', alias_priority=1), 'tariftyp': FieldInfo(annotation=Union[Tariftyp, NoneType], required=False, alias='tariftyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.TARIF: 'TARIF'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zeitliche_gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='zeitlicheGueltigkeit', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- preisgarantie: Preisgarantie | None
Preisgarantie für diesen Tarif
- tarif_auf_abschlaege: list[AufAbschlagRegional] | None
Auf- und Abschläge auf die Preise oder Kosten mit regionaler Eingrenzung
- tarifeinschraenkung: Tarifeinschraenkung | None
Die Bedingungen und Einschränkungen unter denen ein Tarif angewendet werden kann
- tarifpreise: list[TarifpreispositionProOrt] | None
Die festgelegten Preise mit regionaler Eingrenzung z.B. für Arbeitspreis, Grundpreis etc.
bo4e.bo.tarifinfo module
Contains Tarifinfo class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.tarifinfo.Tarifinfo(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.TARIFINFO, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, anbietername: str | None = None, sparte: Sparte | None = None, kundentypen: list[Kundentyp] | None = None, registeranzahl: Registeranzahl | None = None, tariftyp: Tariftyp | None = None, tarifmerkmale: list[Tarifmerkmal] | None = None, anbieter: Marktteilnehmer | None = None, website: str | None = None, bemerkung: str | None = None, zeitlicheGueltigkeit: Zeitraum | None = None, energiemix: Energiemix | None = None, vertragskonditionen: Vertragskonditionen | None = None, anwendungVon: datetime | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektDas BO Tarifinfo liefert die Merkmale, die einen Endkundentarif identifizierbar machen. Dieses BO dient als Basis für weitere BOs mit erweiterten Anwendungsmöglichkeiten.
- anbieter: Marktteilnehmer | None
Der Marktteilnehmer (Lieferant), der diesen Tarif anbietet
- anwendung_von: datetime | None
Angabe des inklusiven Zeitpunkts, ab dem der Tarif bzw. der Preis angewendet und abgerechnet wird, z.B. “2021-07-20T18:31:48Z”
- energiemix: Energiemix | None
Der Energiemix, der für diesen Tarif gilt
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anbieter': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='anbieter', alias_priority=1), 'anbietername': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anbietername', alias_priority=1), 'anwendung_von': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='anwendungVon', alias_priority=1), 'bemerkung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bemerkung', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'energiemix': FieldInfo(annotation=Union[Energiemix, NoneType], required=False, alias='energiemix', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundentypen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundentypen', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'tarifmerkmale': FieldInfo(annotation=Union[list[Tarifmerkmal], NoneType], required=False, alias='tarifmerkmale', alias_priority=1), 'tariftyp': FieldInfo(annotation=Union[Tariftyp, NoneType], required=False, alias='tariftyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.TARIFINFO: 'TARIFINFO'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zeitliche_gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='zeitlicheGueltigkeit', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- registeranzahl: Registeranzahl | None
Die Art des Tarifes, z.B. Eintarif oder Mehrtarif
- tarifmerkmale: list[Tarifmerkmal] | None
Weitere Merkmale des Tarifs, z.B. Festpreis oder Vorkasse
- vertragskonditionen: Vertragskonditionen | None
Mindestlaufzeiten und Kündigungsfristen zusammengefasst
bo4e.bo.tarifkosten module
Contains Tarifkosten class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.tarifkosten.Tarifkosten(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.TARIFKOSTEN, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, anbietername: str | None = None, sparte: Sparte | None = None, kundentypen: list[Kundentyp] | None = None, registeranzahl: Registeranzahl | None = None, tariftyp: Tariftyp | None = None, tarifmerkmale: list[Tarifmerkmal] | None = None, anbieter: Marktteilnehmer | None = None, website: str | None = None, bemerkung: str | None = None, zeitlicheGueltigkeit: Zeitraum | None = None, energiemix: Energiemix | None = None, vertragskonditionen: Vertragskonditionen | None = None, anwendungVon: datetime | None = None, kosten: Kosten | None = None, **extra_data: Any)[source]
Bases:
TarifinfoObjekt zur Kommunikation von Kosten, die im Rahmen der Tarifanwendung entstehen
- kosten: Kosten | None
Referenz (Link) zu einem Kostenobjekt, in dem die Kosten für die Anwendung des Tarifs auf eine Abnahmesituation berechnet wurden
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anbieter': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='anbieter', alias_priority=1), 'anbietername': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anbietername', alias_priority=1), 'anwendung_von': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='anwendungVon', alias_priority=1), 'bemerkung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bemerkung', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'energiemix': FieldInfo(annotation=Union[Energiemix, NoneType], required=False, alias='energiemix', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kosten': FieldInfo(annotation=Union[Kosten, NoneType], required=False, alias='kosten', alias_priority=1), 'kundentypen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundentypen', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'tarifmerkmale': FieldInfo(annotation=Union[list[Tarifmerkmal], NoneType], required=False, alias='tarifmerkmale', alias_priority=1), 'tariftyp': FieldInfo(annotation=Union[Tariftyp, NoneType], required=False, alias='tariftyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.TARIFKOSTEN: 'TARIFKOSTEN'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zeitliche_gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='zeitlicheGueltigkeit', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
bo4e.bo.tarifpreisblatt module
Contains Tarifpreisblatt class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.tarifpreisblatt.Tarifpreisblatt(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.TARIFPREISBLATT, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, anbietername: str | None = None, sparte: Sparte | None = None, kundentypen: list[Kundentyp] | None = None, registeranzahl: Registeranzahl | None = None, tariftyp: Tariftyp | None = None, tarifmerkmale: list[Tarifmerkmal] | None = None, anbieter: Marktteilnehmer | None = None, website: str | None = None, bemerkung: str | None = None, zeitlicheGueltigkeit: Zeitraum | None = None, energiemix: Energiemix | None = None, vertragskonditionen: Vertragskonditionen | None = None, anwendungVon: datetime | None = None, preisstand: datetime | None = None, tarifpreise: list[Tarifpreisposition] | None = None, berechnungsparameter: Tarifberechnungsparameter | None = None, tarifeinschraenkung: Tarifeinschraenkung | None = None, preisgarantie: Preisgarantie | None = None, tarifAufAbschlaege: list[AufAbschlag] | None = None, **extra_data: Any)[source]
Bases:
TarifinfoTarifinformation mit Preisen, Aufschlägen und Berechnungssystematik
- berechnungsparameter: Tarifberechnungsparameter | None
Für die Berechnung der Kosten sind die hier abgebildeten Parameter heranzuziehen
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'anbieter': FieldInfo(annotation=Union[Marktteilnehmer, NoneType], required=False, alias='anbieter', alias_priority=1), 'anbietername': FieldInfo(annotation=Union[str, NoneType], required=False, alias='anbietername', alias_priority=1), 'anwendung_von': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='anwendungVon', alias_priority=1), 'bemerkung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bemerkung', alias_priority=1), 'berechnungsparameter': FieldInfo(annotation=Union[Tarifberechnungsparameter, NoneType], required=False, alias='berechnungsparameter', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'energiemix': FieldInfo(annotation=Union[Energiemix, NoneType], required=False, alias='energiemix', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'kundentypen': FieldInfo(annotation=Union[list[Kundentyp], NoneType], required=False, alias='kundentypen', alias_priority=1), 'preisgarantie': FieldInfo(annotation=Union[Preisgarantie, NoneType], required=False, alias='preisgarantie', alias_priority=1), 'preisstand': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='preisstand', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'tarif_auf_abschlaege': FieldInfo(annotation=Union[list[AufAbschlag], NoneType], required=False, alias='tarifAufAbschlaege', alias_priority=1), 'tarifeinschraenkung': FieldInfo(annotation=Union[Tarifeinschraenkung, NoneType], required=False, alias='tarifeinschraenkung', alias_priority=1), 'tarifmerkmale': FieldInfo(annotation=Union[list[Tarifmerkmal], NoneType], required=False, alias='tarifmerkmale', alias_priority=1), 'tarifpreise': FieldInfo(annotation=Union[list[Tarifpreisposition], NoneType], required=False, alias='tarifpreise', alias_priority=1), 'tariftyp': FieldInfo(annotation=Union[Tariftyp, NoneType], required=False, alias='tariftyp', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.TARIFPREISBLATT: 'TARIFPREISBLATT'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'website': FieldInfo(annotation=Union[str, NoneType], required=False, alias='website', alias_priority=1), 'zeitliche_gueltigkeit': FieldInfo(annotation=Union[Zeitraum, NoneType], required=False, alias='zeitlicheGueltigkeit', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- preisgarantie: Preisgarantie | None
Festlegung von Garantien für bestimmte Preisanteile
- tarif_auf_abschlaege: list[AufAbschlag] | None
Auf- und Abschläge auf die Preise oder Kosten
- tarifeinschraenkung: Tarifeinschraenkung | None
Die Bedingungen und Einschränkungen unter denen ein Tarif angewendet werden kann
- tarifpreise: list[Tarifpreisposition] | None
Die festgelegten Preise, z.B. für Arbeitspreis, Grundpreis etc.
bo4e.bo.vertrag module
Contains Vertrag class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.vertrag.Vertrag(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.VERTRAG, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, vertragsnummer: str | None = None, vertragsart: Vertragsart | None = None, vertragsstatus: Vertragsstatus | None = None, sparte: Sparte | None = None, vertragsbeginn: datetime | None = None, vertragsende: datetime | None = None, vertragspartner1: Geschaeftspartner | None = None, vertragspartner2: Geschaeftspartner | None = None, vertragsteile: list[Vertragsteil] | None = None, beschreibung: str | None = None, vertragskonditionen: Vertragskonditionen | None = None, unterzeichnervp1: list[Unterschrift] | None = None, unterzeichnervp2: list[Unterschrift] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektModell für die Abbildung von Vertragsbeziehungen; Das Objekt dient dazu, alle Arten von Verträgen, die in der Energiewirtschaft Verwendung finden, abzubilden.
Hint
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'beschreibung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='beschreibung', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.VERTRAG: 'VERTRAG'>, alias='_typ', alias_priority=2), 'unterzeichnervp1': FieldInfo(annotation=Union[list[Unterschrift], NoneType], required=False, alias='unterzeichnervp1', alias_priority=1), 'unterzeichnervp2': FieldInfo(annotation=Union[list[Unterschrift], NoneType], required=False, alias='unterzeichnervp2', alias_priority=1), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'vertragsart': FieldInfo(annotation=Union[Vertragsart, NoneType], required=False, alias='vertragsart', alias_priority=1), 'vertragsbeginn': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='vertragsbeginn', alias_priority=1), 'vertragsende': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='vertragsende', alias_priority=1), 'vertragskonditionen': FieldInfo(annotation=Union[Vertragskonditionen, NoneType], required=False, alias='vertragskonditionen', alias_priority=1), 'vertragsnummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='vertragsnummer', alias_priority=1), 'vertragspartner1': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='vertragspartner1', alias_priority=1), 'vertragspartner2': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='vertragspartner2', alias_priority=1), 'vertragsstatus': FieldInfo(annotation=Union[Vertragsstatus, NoneType], required=False, alias='vertragsstatus', alias_priority=1), 'vertragsteile': FieldInfo(annotation=Union[list[Vertragsteil], NoneType], required=False, alias='vertragsteile', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- unterzeichnervp1: list[Unterschrift] | None
Unterzeichner des Vertragspartners 1
- unterzeichnervp2: list[Unterschrift] | None
Unterzeichner des Vertragspartners 2
- vertragsart: Vertragsart | None
Hier ist festgelegt, um welche Art von Vertrag es sich handelt.
- vertragsende: datetime | None
Gibt an, wann der Vertrag (voraussichtlich) endet oder beendet wurde (exklusiv)
- vertragskonditionen: Vertragskonditionen | None
Festlegungen zu Laufzeiten und Kündigungsfristen
- vertragspartner1: Geschaeftspartner | None
Der “erstgenannte” Vertragspartner. In der Regel der Aussteller des Vertrags. Beispiel: “Vertrag zwischen Vertragspartner 1 …”
- vertragspartner2: Geschaeftspartner | None
Der “zweitgenannte” Vertragspartner. In der Regel der Empfänger des Vertrags. Beispiel “Vertrag zwischen Vertragspartner 1 und Vertragspartner 2”.
- vertragsstatus: Vertragsstatus | None
Gibt den Status des Vertrags an
- vertragsteile: list[Vertragsteil] | None
Der Vertragsteil wird dazu verwendet, eine vertragliche Leistung in Bezug zu einer Lokation (Markt- oder Messlokation) festzulegen.
bo4e.bo.zaehler module
Contains Zaehler class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.zaehler.Zaehler(*, _version: str | None = '0.0.0', _typ: Typ | None = Typ.ZAEHLER, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, zaehlernummer: str | None = None, sparte: Sparte | None = None, zaehlerauspraegung: Zaehlerauspraegung | None = None, zaehlertyp: Zaehlertyp | None = None, zaehlwerke: list[Zaehlwerk] | None = None, registeranzahl: Registeranzahl | None = None, zaehlerkonstante: Decimal | None = None, eichungBis: datetime | None = None, letzteEichung: datetime | None = None, zaehlerhersteller: Geschaeftspartner | None = None, istFernschaltbar: bool | None = None, messwerterfassung: Messwerterfassung | None = None, zaehlertypSpezifikation: ZaehlertypSpezifikation | None = None, befestigungsart: Befestigungsart | None = None, zaehlergroesse: Zaehlergroesse | None = None, geraete: list[Geraet] | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektObject containing information about a meter/”Zaehler”.
Hint
- befestigungsart: Befestigungsart | None
Befestigungsart
- geraete: list[Geraet] | None
Liste der Geräte, die zu diesem Zähler gehören, bspw. Smartmeter-Gateway
- messwerterfassung: Messwerterfassung | None
Messwerterfassung des Zählers
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'befestigungsart': FieldInfo(annotation=Union[Befestigungsart, NoneType], required=False, alias='befestigungsart', alias_priority=1), 'eichung_bis': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='eichungBis', alias_priority=1), 'geraete': FieldInfo(annotation=Union[list[Geraet], NoneType], required=False, alias='geraete', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'ist_fernschaltbar': FieldInfo(annotation=Union[bool, NoneType], required=False, alias='istFernschaltbar', alias_priority=1), 'letzte_eichung': FieldInfo(annotation=Union[datetime, NoneType], required=False, alias='letzteEichung', alias_priority=1), 'messwerterfassung': FieldInfo(annotation=Union[Messwerterfassung, NoneType], required=False, alias='messwerterfassung', alias_priority=1), 'registeranzahl': FieldInfo(annotation=Union[Registeranzahl, NoneType], required=False, alias='registeranzahl', alias_priority=1), 'sparte': FieldInfo(annotation=Union[Sparte, NoneType], required=False, alias='sparte', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.ZAEHLER: 'ZAEHLER'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='0.0.0', alias='_version', alias_priority=2), 'zaehlerauspraegung': FieldInfo(annotation=Union[Zaehlerauspraegung, NoneType], required=False, alias='zaehlerauspraegung', alias_priority=1), 'zaehlergroesse': FieldInfo(annotation=Union[Zaehlergroesse, NoneType], required=False, alias='zaehlergroesse', alias_priority=1), 'zaehlerhersteller': FieldInfo(annotation=Union[Geschaeftspartner, NoneType], required=False, alias='zaehlerhersteller', alias_priority=1), 'zaehlerkonstante': FieldInfo(annotation=Union[Decimal, NoneType], required=False, alias='zaehlerkonstante', alias_priority=1), 'zaehlernummer': FieldInfo(annotation=Union[str, NoneType], required=False, alias='zaehlernummer', alias_priority=1), 'zaehlertyp': FieldInfo(annotation=Union[Zaehlertyp, NoneType], required=False, alias='zaehlertyp', alias_priority=1), 'zaehlertypSpezifikation': FieldInfo(annotation=Union[ZaehlertypSpezifikation, NoneType], required=False, alias='zaehlertypSpezifikation', alias_priority=1), 'zaehlwerke': FieldInfo(annotation=Union[list[Zaehlwerk], NoneType], required=False, alias='zaehlwerke', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- registeranzahl: Registeranzahl | None
Spezifikation bezüglich unterstützter Tarif
- zaehlerauspraegung: Zaehlerauspraegung | None
Spezifikation die Richtung des Zählers betreffend
- zaehlergroesse: Zaehlergroesse | None
Größe des Zählers
- zaehlerhersteller: Geschaeftspartner | None
Der Hersteller des Zählers
- zaehlertyp: Zaehlertyp | None
Typisierung des Zählers
- zaehlertypSpezifikation: ZaehlertypSpezifikation | None
Besondere Spezifikation des Zählers
bo4e.bo.zeitreihe module
Contains Zeitreihe class and corresponding marshmallow schema for de-/serialization
- class bo4e.bo.zeitreihe.Zeitreihe(*, version: str | None = None, _typ: Typ | None = Typ.ZEITREIHE, zusatzAttribute: list[ZusatzAttribut] | None = None, _id: str | None = None, bezeichnung: str | None = None, messgroesse: Messgroesse | None = None, messart: Messart | None = None, medium: Medium | None = None, einheit: Mengeneinheit | None = None, werte: list[Zeitreihenwert] | None = None, beschreibung: str | None = None, wertherkunft: Wertermittlungsverfahren | None = None, **extra_data: Any)[source]
Bases:
GeschaeftsobjektAbbildung einer allgemeinen Zeitreihe mit einem Wertvektor. Die Werte können mit wahlfreier zeitlicher Distanz im Vektor abgelegt sein.
- einheit: Mengeneinheit | None
Alle Werte in der Tabelle haben die Einheit, die hier angegeben ist
- messart: Messart | None
Beschreibt die Art der Messung (z.B. aktueller Wert, mittlerer Wert, maximaler Wert)
- messgroesse: Messgroesse | None
Beschreibt, was gemessen wurde (z.B. Strom, Spannung, Wirkleistung, Scheinleistung)
- model_config: ClassVar[ConfigDict] = {'alias_generator': <function camelize>, 'extra': 'allow', 'json_encoders': {<class 'decimal.Decimal'>: <class 'str'>}, 'populate_by_name': True}
basic configuration for pydantic’s behaviour
- model_fields: ClassVar[dict[str, FieldInfo]] = {'beschreibung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='beschreibung', alias_priority=1), 'bezeichnung': FieldInfo(annotation=Union[str, NoneType], required=False, alias='bezeichnung', alias_priority=1), 'einheit': FieldInfo(annotation=Union[Mengeneinheit, NoneType], required=False, alias='einheit', alias_priority=1), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, alias='_id', alias_priority=2), 'medium': FieldInfo(annotation=Union[Medium, NoneType], required=False, alias='medium', alias_priority=1), 'messart': FieldInfo(annotation=Union[Messart, NoneType], required=False, alias='messart', alias_priority=1), 'messgroesse': FieldInfo(annotation=Union[Messgroesse, NoneType], required=False, alias='messgroesse', alias_priority=1), 'typ': FieldInfo(annotation=Union[Typ, NoneType], required=False, default=<Typ.ZEITREIHE: 'ZEITREIHE'>, alias='_typ', alias_priority=2), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, alias='version', alias_priority=1), 'werte': FieldInfo(annotation=Union[list[Zeitreihenwert], NoneType], required=False, alias='werte', alias_priority=1), 'wertherkunft': FieldInfo(annotation=Union[Wertermittlungsverfahren, NoneType], required=False, alias='wertherkunft', alias_priority=1), 'zusatz_attribute': FieldInfo(annotation=Union[list[ZusatzAttribut], NoneType], required=False, alias='zusatzAttribute', alias_priority=1)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- werte: list[Zeitreihenwert] | None
Hier liegen jeweils die Werte
- wertherkunft: Wertermittlungsverfahren | None
Kennzeichnung, wie die Werte entstanden sind, z.B. durch Messung