Skip to content

The metadata_people module

This module contains models for creators, contributors, affiliations, and person identifiers.

from gamslib.datacite.metadata_people import (
    PersonOrOrganizationIdentifier,
    PersonOrOrganization,
    Affiliation,
    Creator,
    Contributor,
)

gamslib.datacite.metadata_people.PersonOrOrganizationIdentifier

Bases: BaseModel

Represents a person or organization identifier.

scheme instance-attribute

scheme

identifier instance-attribute

identifier

normalize_scheme classmethod

normalize_scheme(value)

Normalize identifier schemes to lowercase.

gamslib.datacite.metadata_people.PersonOrOrganization

Bases: BaseModel

Represents a person or organization used in creator-like fields.

type instance-attribute

type

given_name class-attribute instance-attribute

given_name = None

family_name class-attribute instance-attribute

family_name = None

name class-attribute instance-attribute

name = None

identifiers class-attribute instance-attribute

identifiers = None

validate_name_fields

validate_name_fields()

Validate required/forbidden name fields based on the type value.

gamslib.datacite.metadata_people.Affiliation

Bases: BaseModel

Represents an affiliation for a person or organization.

id class-attribute instance-attribute

id = None

name class-attribute instance-attribute

name = None

validate_exactly_one_field

validate_exactly_one_field()

Validate that exactly one of id or name is provided.

gamslib.datacite.metadata_people.Creator

Bases: BaseModel

Represents a creator for a record.

person_or_org instance-attribute

person_or_org

role class-attribute instance-attribute

role = None

affiliations class-attribute instance-attribute

affiliations = Field(default_factory=list)

gamslib.datacite.metadata_people.Contributor

Bases: Creator

Represents a contributor for a record.

role instance-attribute

role

person_or_org instance-attribute

person_or_org

affiliations class-attribute instance-attribute

affiliations = Field(default_factory=list)