Skip to content

Main Class#

Bases: BaseModel

Microbe - main class of the new microbial data standard

Parameters:

Name Type Description Default
organismType OrganismType
required
morphType Morph | None

Applicable and required for fungi only

None
unifiedTypeStrain bool | None

Is this strain type for unified species

None
unifiedTaxon Taxon | None

Evaluated and updated taxonomy

None
typeStrain list[TypeStrain]
required
taxon list[TaxonWithSource]
required
sample list[Sample]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
isolation list[Isolation]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
legal list[Legal]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
cellShape list[CellShape]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
oxygenRelation list[OxygenRelation]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
multiCellComplexForming list[MultiCell]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
cellSize list[CellSize]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
motility list[Motility]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
colony list[Colony]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
sporeFormation list[Spore]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
temperature list[Growth[Literal[C]]]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
ph list[Growth[Literal[pH]]]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
identifier list[IdentifierStrain]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
connectedPersons list[ConnectedPerson]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
pathogenicity list[Pathogen]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
bioSafety list[BioSafety]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
sequences list[Sequence]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
gcContent list[GCContent]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
literature list[Literature]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
wallConstituents list[CellWall]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
fattyAcidProfiles list[FattyAcidProfile]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
staining list[Staining]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
hemolysis list[Hemolysis]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
cultivationMedia list[CultivationMedia]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
halophily list[Halophil]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
tolerances list[Tolerance]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
enzymes list[Enzyme]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
metabolites list[Metabolite]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
knownApplications list[Application]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
collections list[Collection]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
otherMedia list[OtherMedia]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
relatedData list[RelatedData]

Built-in mutable sequence.

If no argument is given, the constructor creates a new empty list. The argument must be an iterable if specified.

<dynamic>
sources list[Union[Literature, Organization, Person]]
required
Source code in src/microbial_strain_data_model/microbe.py
class Microbe(BaseModel):
    """Microbe - main class of the new microbial data standard"""

    # single data points

    organismType: OrganismType = Field(title="Organism Type", description="", frozen=True)

    morphType: Morph | None = Field(
        default=None,
        title="Morph Type",
        description="Applicable and required for fungi only",
        frozen=True,
    )

    unifiedTypeStrain: bool | None = Field(
        default=None,
        title="Unified Type Strain",
        description="Is this strain type for unified species",
        frozen=True,
    )

    unifiedTaxon: Taxon | None = Field(
        default=None,
        title="Unified Taxon",
        description="Evaluated and updated taxonomy",
    )

    # lists of data objects

    typeStrain: list[TypeStrain] = Field(title="Type Strain", description="")

    taxon: list[TaxonWithSource] = Field(title="Taxon", description="")

    sample: list[Sample] = Field(default_factory=list, title="Sample", description="")

    isolation: list[Isolation] = Field(
        default_factory=list, title="Isolation", description=""
    )

    legal: list[Legal] = Field(default_factory=list, title="Legal", description="")

    cellShape: list[CellShape] = Field(
        default_factory=list, title="Cell Shape", description=""
    )

    oxygenRelation: list[OxygenRelation] = Field(
        default_factory=list,
        title="Oxygen Relation",
        description="",
    )

    multiCellComplexForming: list[MultiCell] = Field(
        default_factory=list,
        title="Multi Cell Complex Forming",
        description="",
    )

    cellSize: list[CellSize] = Field(
        default_factory=list, title="Cell Size", description=""
    )

    motility: list[Motility] = Field(
        default_factory=list, title="Motility", description=""
    )

    colony: list[Colony] = Field(default_factory=list, title="Colony", description="")

    sporeFormation: list[Spore] = Field(
        default_factory=list,
        title="Spore Formation",
        description="",
    )

    temperature: list[Growth[CelsiusUnit]] = Field(
        default_factory=list, title="Temperature", description=""
    )

    ph: list[Growth[PHUnit]] = Field(default_factory=list, title="pH", description="")

    identifier: list[IdentifierStrain] = Field(
        default_factory=list, title="Identifier", description=""
    )

    connectedPersons: list[ConnectedPerson] = Field(
        default_factory=list,
        title="Connected Persons",
        description="",
    )

    pathogenicity: list[Pathogen] = Field(
        default_factory=list, title="pathogenicity", description=""
    )

    bioSafety: list[BioSafety] = Field(
        default_factory=list, title="Bio Safety", description=""
    )

    sequences: list[Sequence] = Field(
        default_factory=list, title="Sequences", description=""
    )

    gcContent: list[GCContent] = Field(
        default_factory=list, title="GC Content", description=""
    )

    literature: list[Literature] = Field(
        default_factory=list, title="Literature", description=""
    )

    wallConstituents: list[CellWall] = Field(
        default_factory=list,
        title="Wall Constituents",
        description="",
    )

    fattyAcidProfiles: list[FattyAcidProfile] = Field(
        default_factory=list,
        title="Fatty Acid Profile",
        description="",
    )

    staining: list[Staining] = Field(
        default_factory=list, title="Stainings", description=""
    )

    hemolysis: list[Hemolysis] = Field(
        default_factory=list, title="Hemolysis", description=""
    )

    cultivationMedia: list[CultivationMedia] = Field(
        default_factory=list,
        title="Cultivation Media",
        description="",
    )

    halophily: list[Halophil] = Field(
        default_factory=list, title="Halophily", description=""
    )

    tolerances: list[Tolerance] = Field(
        default_factory=list, title="Tolerances", description=""
    )

    enzymes: list[Enzyme] = Field(default_factory=list, title="Enzymes", description="")
    metabolites: list[Metabolite] = Field(
        default_factory=list, title="Metabolites", description=""
    )

    knownApplications: list[Application] = Field(
        default_factory=list,
        title="Known Applications",
        description="",
    )

    collections: list[Collection] = Field(
        default_factory=list, title="Collections", description=""
    )

    otherMedia: list[OtherMedia] = Field(
        default_factory=list, title="Other Media", description=""
    )

    relatedData: list[RelatedData] = Field(
        default_factory=list, title="Related Data", description=""
    )

    sources: list[Literature | Organization | Person] = Field(
        title="Source", description=""
    )

    model_config = ConfigDict(
        strict=True,
        extra="forbid",
        revalidate_instances="always",
        str_strip_whitespace=True,
    )