bioimageio.spec.generic

implementaions of all released minor versions are available in submodules:

 1# autogen: start
 2"""
 3implementaions of all released minor versions are available in submodules:
 4- generic v0_2: `bioimageio.spec.generic.v0_2.GenericDescr`
 5- generic v0_3: `bioimageio.spec.generic.v0_3.GenericDescr`
 6"""
 7
 8from typing import Union
 9
10from pydantic import Discriminator, Field
11from typing_extensions import Annotated
12
13from . import v0_2, v0_3
14
15GenericDescr = v0_3.GenericDescr
16GenericDescr_v0_2 = v0_2.GenericDescr
17GenericDescr_v0_3 = v0_3.GenericDescr
18
19AnyGenericDescr = Annotated[
20    Union[
21        Annotated[GenericDescr_v0_2, Field(title="generic 0.2")],
22        Annotated[GenericDescr_v0_3, Field(title="generic 0.3")],
23    ],
24    Discriminator("format_version"),
25    Field(title="generic"),
26]
27"""Union of any released generic desription"""
28# autogen: stop
class GenericDescr(bioimageio.spec.generic.v0_3.GenericDescrBase):
476class GenericDescr(GenericDescrBase, extra="ignore"):
477    """Specification of the fields used in a generic bioimage.io-compliant resource description file (RDF).
478
479    An RDF is a YAML file that describes a resource such as a model, a dataset, or a notebook.
480    Note that those resources are described with a type-specific RDF.
481    Use this generic resource description, if none of the known specific types matches your resource.
482    """
483
484    type: Annotated[str, LowerCase] = Field("generic", frozen=True)
485    """The resource type assigns a broad category to the resource."""
486
487    id: Optional[
488        Annotated[ResourceId, Field(examples=["affable-shark", "ambitious-sloth"])]
489    ] = None
490    """bioimage.io-wide unique resource identifier
491    assigned by bioimage.io; version **un**specific."""
492
493    parent: Optional[ResourceId] = None
494    """The description from which this one is derived"""
495
496    source: Optional[HttpUrl] = None
497    """The primary source of the resource"""
498
499    @field_validator("type", mode="after")
500    @classmethod
501    def check_specific_types(cls, value: str) -> str:
502        if value in KNOWN_SPECIFIC_RESOURCE_TYPES:
503            raise ValueError(
504                f"Use the {value} description instead of this generic description for"
505                + f" your '{value}' resource."
506            )
507
508        return value

Specification of the fields used in a generic bioimage.io-compliant resource description file (RDF).

An RDF is a YAML file that describes a resource such as a model, a dataset, or a notebook. Note that those resources are described with a type-specific RDF. Use this generic resource description, if none of the known specific types matches your resource.

type: Annotated[str, Annotated[~_StrType, Predicate(str.islower)]]

The resource type assigns a broad category to the resource.

id: Optional[Annotated[bioimageio.spec.generic.v0_3.ResourceId, FieldInfo(annotation=NoneType, required=True, examples=['affable-shark', 'ambitious-sloth'])]]

bioimage.io-wide unique resource identifier assigned by bioimage.io; version unspecific.

The description from which this one is derived

source: Optional[bioimageio.spec._internal.url.HttpUrl]

The primary source of the resource

@field_validator('type', mode='after')
@classmethod
def check_specific_types(cls, value: str) -> str:
499    @field_validator("type", mode="after")
500    @classmethod
501    def check_specific_types(cls, value: str) -> str:
502        if value in KNOWN_SPECIFIC_RESOURCE_TYPES:
503            raise ValueError(
504                f"Use the {value} description instead of this generic description for"
505                + f" your '{value}' resource."
506            )
507
508        return value
implemented_format_version_tuple: ClassVar[Tuple[int, int, int]] = (0, 3, 0)
def model_post_init(self: pydantic.main.BaseModel, context: Any, /) -> None:
124                    def wrapped_model_post_init(self: BaseModel, context: Any, /) -> None:
125                        """We need to both initialize private attributes and call the user-defined model_post_init
126                        method.
127                        """
128                        init_private_attributes(self, context)
129                        original_model_post_init(self, context)

We need to both initialize private attributes and call the user-defined model_post_init method.

GenericDescr_v0_2 = <class 'bioimageio.spec.generic.v0_2.GenericDescr'>
GenericDescr_v0_3 = <class 'GenericDescr'>
AnyGenericDescr = typing.Annotated[typing.Union[typing.Annotated[bioimageio.spec.generic.v0_2.GenericDescr, FieldInfo(annotation=NoneType, required=True, title='generic 0.2')], typing.Annotated[GenericDescr, FieldInfo(annotation=NoneType, required=True, title='generic 0.3')]], Discriminator(discriminator='format_version', custom_error_type=None, custom_error_message=None, custom_error_context=None), FieldInfo(annotation=NoneType, required=True, title='generic')]

Union of any released generic desription