Source code for bo4e.bo.zeitreihe

"""
Contains Zeitreihe class and corresponding marshmallow schema for de-/serialization
"""

# pylint: disable=too-few-public-methods, too-many-instance-attributes
# pylint: disable=no-name-in-module
from typing import Optional

from pydantic import conlist

from bo4e.bo.geschaeftsobjekt import Geschaeftsobjekt
from bo4e.com.zeitreihenwert import Zeitreihenwert
from bo4e.enum.botyp import BoTyp
from bo4e.enum.medium import Medium
from bo4e.enum.mengeneinheit import Mengeneinheit
from bo4e.enum.messart import Messart
from bo4e.enum.messgroesse import Messgroesse
from bo4e.enum.wertermittlungsverfahren import Wertermittlungsverfahren


[docs]class Zeitreihe(Geschaeftsobjekt): """ Abbildung einer allgemeinen Zeitreihe mit einem Wertvektor. Die Werte können mit wahlfreier zeitlicher Distanz im Vektor abgelegt sein. .. raw:: html <object data="../_static/images/bo4e/bo/Zeitreihe.svg" type="image/svg+xml"></object> .. HINT:: `Zeitreihe JSON Schema <https://json-schema.app/view/%23?url=https://raw.githubusercontent.com/Hochfrequenz/BO4E-python/main/json_schemas/bo/Zeitreihe.json>`_ """ # required attributes bo_typ: BoTyp = BoTyp.ZEITREIHE #: Bezeichnung für die Zeitreihe bezeichnung: str #: Beschreibt, was gemessen wurde (z.B. Strom, Spannung, Wirkleistung, Scheinleistung) messgroesse: Messgroesse #: Beschreibt die Art der Messung (z.B. aktueller Wert, mittlerer Wert, maximaler Wert) messart: Messart #: Medium, das gemessen wurde (z.B. Wasser, Dampf, Strom, Gas) medium: Medium #: Alle Werte in der Tabelle haben die Einheit, die hier angegeben ist einheit: Mengeneinheit #: Hier liegen jeweils die Werte werte: conlist(Zeitreihenwert, min_items=1) # type: ignore[valid-type] # optional attributes #: Beschreibt die Verwendung der Zeitreihe beschreibung: Optional[str] = None #: Version der Zeitreihe version: Optional[str] = None #: Kennzeichnung, wie die Werte entstanden sind, z.B. durch Messung wertherkunft: Optional[Wertermittlungsverfahren] = None