diff --git a/nomad/datamodel/metainfo/annotations.py b/nomad/datamodel/metainfo/annotations.py index ed177b2541d635769a755fa10fc544f220765c29..5042458aa2aeff96e4a424ab8d56980de99646cb 100644 --- a/nomad/datamodel/metainfo/annotations.py +++ b/nomad/datamodel/metainfo/annotations.py @@ -23,7 +23,14 @@ from typing import Any from pydantic import ConfigDict, Field, field_validator, model_validator from pydantic.main import BaseModel -from nomad.metainfo import AnnotationModel, Datetime, MEnum, Quantity, Reference +from nomad.metainfo import ( + AnnotationModel, + Datetime, + Definition, # noqa: F401 + MEnum, + Quantity, + Reference, +) from nomad.utils import strip from ...metainfo.data_type import Datatype diff --git a/nomad/metainfo/annotation.py b/nomad/metainfo/annotation.py index 6ee540abe928d152d28b324e2ca686c93f708f75..7b504aa86d9b6816dba4d13e169395c97039601f 100644 --- a/nomad/metainfo/annotation.py +++ b/nomad/metainfo/annotation.py @@ -54,6 +54,9 @@ class SectionAnnotation(DefinitionAnnotation): return {} +Definition = ForwardRef('Definition') + + class AnnotationModel(Annotation, BaseModel): """ Base class for defining annotation models. Annotations used with simple dict-based @@ -61,7 +64,7 @@ class AnnotationModel(Annotation, BaseModel): model. """ - m_definition: ForwardRef('Definition') = Field( # type: ignore + m_definition: Definition = Field( # type: ignore None, description='The definition that this annotation is annotating.', exclude=True,