Skip to content

omnipy.components.isa.models.publication_schema

ISA model representing a publication in an investigation.

ISA-JSON is the JSON-LD representation of Investigation/Study/Assay metadata used by these generated model types.

CLASS DESCRIPTION
FieldType

JSON-LD type labels used for ISA publication entities.

IsaPublicationModel

Omnipy model wrapper for ISA publication entries.

IsaPublicationSchema

Schema for publication metadata linked to ISA investigations.

FieldType

Bases: Enum


              flowchart BT
              omnipy.components.isa.models.publication_schema.FieldType[FieldType]

              

              click omnipy.components.isa.models.publication_schema.FieldType href "" "omnipy.components.isa.models.publication_schema.FieldType"
            

JSON-LD type labels used for ISA publication entities.

ATTRIBUTE DESCRIPTION
Publication

Marks a JSON object as an ISA publication.

Source code in src/omnipy/components/isa/models/publication_schema.py
class FieldType(Enum):
    """JSON-LD type labels used for ISA publication entities.

    Attributes:
        Publication: Marks a JSON object as an ISA publication.
    """

    Publication = 'Publication'

Publication class-attribute instance-attribute

Publication = 'Publication'

IsaPublicationModel

Bases: Model[IsaPublicationSchema]


              flowchart BT
              omnipy.components.isa.models.publication_schema.IsaPublicationModel[IsaPublicationModel]
              omnipy.data.model.Model[Model]
              omnipy.data._mixins.display.ModelDisplayMixin[ModelDisplayMixin]
              omnipy.data._mixins.display.BaseDisplayMixin[BaseDisplayMixin]
              omnipy.data._data_class_creator.DataClassBase[DataClassBase]

                              omnipy.data.model.Model --> omnipy.components.isa.models.publication_schema.IsaPublicationModel
                                omnipy.data._mixins.display.ModelDisplayMixin --> omnipy.data.model.Model
                                omnipy.data._mixins.display.BaseDisplayMixin --> omnipy.data._mixins.display.ModelDisplayMixin
                

                omnipy.data._data_class_creator.DataClassBase --> omnipy.data.model.Model
                
                omnipy.util.pydantic.GenericModel --> omnipy.data.model.Model
                



              click omnipy.components.isa.models.publication_schema.IsaPublicationModel href "" "omnipy.components.isa.models.publication_schema.IsaPublicationModel"
              click omnipy.data.model.Model href "" "omnipy.data.model.Model"
              click omnipy.data._mixins.display.ModelDisplayMixin href "" "omnipy.data._mixins.display.ModelDisplayMixin"
              click omnipy.data._mixins.display.BaseDisplayMixin href "" "omnipy.data._mixins.display.BaseDisplayMixin"
              click omnipy.data._data_class_creator.DataClassBase href "" "omnipy.data._data_class_creator.DataClassBase"
            

Omnipy model wrapper for ISA publication entries.

Provides Omnipy Model integration around :class:IsaPublicationSchema.

Source code in src/omnipy/components/isa/models/publication_schema.py
class IsaPublicationModel(Model[IsaPublicationSchema]):
    """Omnipy model wrapper for ISA publication entries.

    Provides Omnipy ``Model`` integration around
    :class:`IsaPublicationSchema`.
    """

    ...

IsaPublicationSchema

Bases: pyd.BaseModel


              flowchart BT
              omnipy.components.isa.models.publication_schema.IsaPublicationSchema[IsaPublicationSchema]

                              omnipy.util.pydantic.BaseModel --> omnipy.components.isa.models.publication_schema.IsaPublicationSchema
                


              click omnipy.components.isa.models.publication_schema.IsaPublicationSchema href "" "omnipy.components.isa.models.publication_schema.IsaPublicationSchema"
            

Schema for publication metadata linked to ISA investigations.

ATTRIBUTE DESCRIPTION
pubMedID

PubMed identifier, when available.

TYPE: str | None

doi

DOI string for the publication.

TYPE: str | None

authorList

Free-form list of publication authors.

TYPE: str | None

title

Publication title.

TYPE: str | None

status

Ontology term describing publication status.

TYPE: ontology_annotation_schema.IsaOntologyReferenceModel | None

CLASS DESCRIPTION
Config

Validation settings for ISA publication schema parsing.

Source code in src/omnipy/components/isa/models/publication_schema.py
class IsaPublicationSchema(pyd.BaseModel):
    """Schema for publication metadata linked to ISA investigations.

    Attributes:
        pubMedID: PubMed identifier, when available.
        doi: DOI string for the publication.
        authorList: Free-form list of publication authors.
        title: Publication title.
        status: Ontology term describing publication status.
    """
    class Config:
        """Validation settings for ISA publication schema parsing.

        Attributes:
            extra: Rejects undeclared keys from payloads.
            use_enum_values: Emits enum fields as value strings.
        """

        extra = pyd.Extra.forbid
        use_enum_values = True

    field_id: Optional[str] = pyd.Field(None, alias='@id')
    field_context: Optional[str] = pyd.Field(None, alias='@context')
    field_type: Optional[FieldType] = pyd.Field(None, alias='@type')
    pubMedID: Optional[str] = None
    doi: Optional[str] = None
    authorList: Optional[str] = None
    title: Optional[str] = None
    status: Optional[ontology_annotation_schema.IsaOntologyReferenceModel] = None
    comments: Optional[List[comment_schema.IsaCommentModel]] = None

authorList class-attribute instance-attribute

authorList: str | None = None

comments class-attribute instance-attribute

comments: list[comment_schema.IsaCommentModel] | None = None

doi class-attribute instance-attribute

doi: str | None = None

field_context class-attribute instance-attribute

field_context: str | None = pyd.Field(None, alias='@context')

field_id class-attribute instance-attribute

field_id: str | None = pyd.Field(None, alias='@id')

field_type class-attribute instance-attribute

field_type: FieldType | None = pyd.Field(None, alias='@type')

pubMedID class-attribute instance-attribute

pubMedID: str | None = None

status class-attribute instance-attribute

title class-attribute instance-attribute

title: str | None = None

Config

Validation settings for ISA publication schema parsing.

ATTRIBUTE DESCRIPTION
extra

Rejects undeclared keys from payloads.

use_enum_values

Emits enum fields as value strings.

Source code in src/omnipy/components/isa/models/publication_schema.py
class Config:
    """Validation settings for ISA publication schema parsing.

    Attributes:
        extra: Rejects undeclared keys from payloads.
        use_enum_values: Emits enum fields as value strings.
    """

    extra = pyd.Extra.forbid
    use_enum_values = True

extra class-attribute instance-attribute

extra = pyd.Extra.forbid

use_enum_values class-attribute instance-attribute

use_enum_values = True