Person#
- pydantic model technote.sources.tomlsettings.Person#
Model for describing a person related to the technote.
- Parameters:
data (
Any
) –
Show JSON schema
{ "title": "Person", "description": "Model for describing a person related to the technote.", "type": "object", "properties": { "name": { "$ref": "#/$defs/PersonName" }, "internal_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "An internal identifier for the person.", "title": "Internal Id" }, "orcid": { "anyOf": [ { "format": "uri", "maxLength": 2083, "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "The ORCiD of the person (https://orcid.org).", "title": "Orcid" }, "affiliations": { "description": "The person's affiliations.", "items": { "$ref": "#/$defs/Organization" }, "title": "Affiliations", "type": "array" }, "email": { "anyOf": [ { "format": "email", "type": "string" }, { "type": "null" } ], "default": null, "description": "Contact email associated with the person.", "title": "Email" } }, "$defs": { "Organization": { "description": "Model for describing an organization (often as an affiliation).", "properties": { "internal_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "A user-specific identifier for an organization.", "title": "Internal Id" }, "ror": { "anyOf": [ { "format": "uri", "maxLength": 2083, "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "The ROR (ror.org) identifier of the institution.", "title": "Ror" }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "The display name of the institution.", "title": "Name" }, "address": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "The address of the institution.", "title": "Address" }, "url": { "anyOf": [ { "format": "uri", "maxLength": 2083, "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "The homepage of the institution.", "title": "Url" } }, "title": "Organization", "type": "object" }, "PersonName": { "description": "A person's name.", "properties": { "family": { "description": "The person's family name (last name in western culture).", "title": "Family", "type": "string" }, "given": { "description": "The person's given name (first name in western culture).", "title": "Given", "type": "string" } }, "required": [ "family", "given" ], "title": "PersonName", "type": "object" } }, "required": [ "name" ] }
- Fields:
- Validators:
- field affiliations: list[Organization] [Optional]#
The person’s affiliations.
- field email: EmailStr | None = None#
Contact email associated with the person.
- field internal_id: str | None = None#
An internal identifier for the person.
- field name: PersonName [Required]#
- field orcid: HttpUrl | None = None#
The ORCiD of the person (https://orcid.org).
- Validated by:
- validator format_orcid_url » orcid#
Format a bare ORCiD identifier as a URL. :rtype:
str
- Parameters:
value (
str
) –
- validator validate_orcid » orcid#
Ensure that
orcid
is a valid ORCiD identifier, orNone
. :rtype:Optional
[Url
]- Parameters:
v (
Optional
[Url
]) –
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding
ComputedFieldInfo
objects.