Source code for ahbicht.models.content_evaluation_result

"""
This module contains a class to store _all_ kinds of content evaluation results.
"""

from typing import Optional
from uuid import UUID

from pydantic import BaseModel, Field, constr

from ahbicht.models.condition_nodes import ConditionFulfilledValue, EvaluatedFormatConstraint


# pylint: disable=too-few-public-methods, unused-argument
[docs] class ContentEvaluationResult(BaseModel): """ A class that holds the results of a full content evaluation (meaning all hints, requirement constraints and format constraints have been evaluated) """ hints: dict[str, Optional[str]] = Field(default_factory=dict) #: maps the key of a hint (e.g. "501" to a hint text) #: maps the key of a format constraint to the respective evaluation result format_constraints: dict[str, EvaluatedFormatConstraint] #: maps the key of a requirement_constraint to the respective evaluation result requirement_constraints: dict[str, ConditionFulfilledValue] packages: Optional[dict[constr(pattern=r"^\d+P$"), str]] = Field(default=None) # type: ignore[valid-type] """ maps the key of a package (e.g. '123') to the respective expression (e.g. '[1] U ([2] O [3])' """ # pylint:disable=invalid-name #: optional guid id: Optional[UUID] = Field(default=None)
__all__ = ["ContentEvaluationResult"]