# generated by datamodel-codegen:
#   filename:  https://raw.githubusercontent.com/HumanBrainProject/openMINDS/3fa86f956b407b2debf47c2e1b6314e37579c707/v3/core/v4/data/copyright.schema.json

from typing import Any, List

from pydantic import Field, constr
from siibra.openminds.base import SiibraBaseModel


class Model(SiibraBaseModel):
    id: str = Field(..., alias='@id', description='Metadata node identifier.')
    type: str = Field(..., alias='@type')
    holder: List[Any] = Field(
        ...,
        alias='holder',
        description='Legal person in possession of something.',
        min_items=1,
        title='holder',
    )
    year: constr(regex=r'([0-9]{4})') = Field(
        ...,
        alias='year',
        description='Cycle in the Gregorian calendar specified by a number and comprised of 365 or 366 days divided into 12 months beginning with January and ending with December.',
        title='year',
    )
