Coverage for bioimageio/spec/application/v0_3.py: 100%

35 statements  

« prev     ^ index     » next       coverage.py v7.6.10, created at 2025-02-05 13:53 +0000

1from typing import Literal, Optional 

2 

3from pydantic import Field 

4from typing_extensions import Annotated 

5 

6from .._internal.io import FileDescr as FileDescr 

7from .._internal.io_basics import AbsoluteFilePath as AbsoluteFilePath 

8from .._internal.io_basics import Sha256 as Sha256 

9from .._internal.types import ImportantFileSource 

10from .._internal.url import HttpUrl as HttpUrl 

11from ..generic.v0_3 import VALID_COVER_IMAGE_EXTENSIONS as VALID_COVER_IMAGE_EXTENSIONS 

12from ..generic.v0_3 import Author as Author 

13from ..generic.v0_3 import BadgeDescr as BadgeDescr 

14from ..generic.v0_3 import CiteEntry as CiteEntry 

15from ..generic.v0_3 import DeprecatedLicenseId as DeprecatedLicenseId 

16from ..generic.v0_3 import Doi as Doi 

17from ..generic.v0_3 import GenericDescrBase, LinkedResourceBase, ResourceId 

18from ..generic.v0_3 import LicenseId as LicenseId 

19from ..generic.v0_3 import LinkedResource as LinkedResource 

20from ..generic.v0_3 import Maintainer as Maintainer 

21from ..generic.v0_3 import OrcidId as OrcidId 

22from ..generic.v0_3 import RelativeFilePath as RelativeFilePath 

23from ..generic.v0_3 import Uploader as Uploader 

24from ..generic.v0_3 import Version as Version 

25 

26 

27class ApplicationId(ResourceId): 

28 pass 

29 

30 

31class ApplicationDescr(GenericDescrBase): 

32 """Bioimage.io description of an application.""" 

33 

34 type: Literal["application"] = "application" 

35 

36 id: Optional[ApplicationId] = None 

37 """bioimage.io-wide unique resource identifier 

38 assigned by bioimage.io; version **un**specific.""" 

39 

40 parent: Optional[ApplicationId] = None 

41 """The description from which this one is derived""" 

42 

43 source: Annotated[ 

44 Optional[ImportantFileSource], 

45 Field(description="URL or path to the source of the application"), 

46 ] = None 

47 """The primary source of the application""" 

48 

49 

50class LinkedApplication(LinkedResourceBase): 

51 """Reference to a bioimage.io application.""" 

52 

53 id: ApplicationId 

54 """A valid application `id` from the bioimage.io collection."""