Contributor#

pydantic model technote.config.Contributor#

Data about a contributor.

A Contributor is the same as a Person, with the addition of the role attribute.

Parameters:

data (Any) –

Show JSON schema
{
   "title": "Contributor",
   "description": "Data about a contributor.\n\nA ``Contributor`` is the same as a ``Person``, with the addition of the\n`role` attribute.",
   "type": "object",
   "properties": {
      "name": {
         "$ref": "#/definitions/PersonName"
      },
      "internal_id": {
         "title": "Internal Id",
         "description": "An internal identifier for the person.",
         "type": "string"
      },
      "orcid": {
         "title": "Orcid",
         "description": "The ORCiD of the person (https://orcid.org).",
         "minLength": 1,
         "maxLength": 2083,
         "format": "uri",
         "type": "string"
      },
      "affiliations": {
         "title": "Affiliations",
         "description": "The person's affiliations.",
         "type": "array",
         "items": {
            "$ref": "#/definitions/Organization"
         }
      },
      "email": {
         "title": "Email",
         "description": "Contact email associated with the person.",
         "type": "string",
         "format": "email"
      },
      "role": {
         "description": "the contributor's role.",
         "allOf": [
            {
               "$ref": "#/definitions/ZenodoRole"
            }
         ]
      },
      "note": {
         "title": "Note",
         "description": "Note describing the contribution.",
         "type": "string"
      }
   },
   "required": [
      "name"
   ],
   "definitions": {
      "PersonName": {
         "title": "PersonName",
         "description": "A person's name.",
         "type": "object",
         "properties": {
            "family_names": {
               "title": "Family Names",
               "description": "The person's family name (last name in western culture).",
               "type": "string"
            },
            "given_names": {
               "title": "Given Names",
               "description": "The person's given name (first name in western culture).",
               "type": "string"
            },
            "name": {
               "title": "Name",
               "description": "The person's name, an alternative to specifying surname and given names.",
               "type": "string"
            }
         }
      },
      "Organization": {
         "title": "Organization",
         "description": "Model for describing an organization (often as an affiliation).",
         "type": "object",
         "properties": {
            "internal_id": {
               "title": "Internal Id",
               "description": "A user-specific identifier for an organization.",
               "type": "string"
            },
            "ror": {
               "title": "Ror",
               "description": "The ROR (ror.org) identifier of the institution.",
               "minLength": 1,
               "maxLength": 2083,
               "format": "uri",
               "type": "string"
            },
            "name": {
               "title": "Name",
               "description": "The display name of the institution.",
               "type": "string"
            },
            "address": {
               "title": "Address",
               "description": "The address of the institution.",
               "type": "string"
            },
            "url": {
               "title": "Url",
               "description": "The homepage of the institution.",
               "minLength": 1,
               "maxLength": 2083,
               "format": "uri",
               "type": "string"
            }
         }
      },
      "ZenodoRole": {
         "title": "ZenodoRole",
         "description": "The role of a contributor in a Zenodo record.",
         "enum": [
            "ContactPerson",
            "DataCollector",
            "DataCurator",
            "DataManager",
            "Distributor",
            "Editor",
            "Funder",
            "HostingInstitution",
            "Producer",
            "ProjectLeader",
            "ProjectManager",
            "ProjectMember",
            "RegistrationAgency",
            "RegistrationAuthority",
            "RelatedPerson",
            "Researcher",
            "ResearchGroup",
            "RightsHolder",
            "Supervisor",
            "Sponsor",
            "WorkPackageLeader",
            "Other"
         ],
         "type": "string"
      }
   }
}

Fields:
field note: Optional[str] = None#

Note describing the contribution.

field role: Optional[ZenodoRole] = None#

the contributor’s role.