scippneutron.metadata.Person#

class scippneutron.metadata.Person(**data)[source]#

A person.

Attention

Please make sure that you don’t specify personal details without permission!

Specify an ORCID iD whenever possible to make sure the person can be uniquely identified. The name is always required but is often not unique. Other contact information like address or email address are less important and can usually be omitted when an ORCID iD is provided.

field address: Annotated[str | None, BeforeValidator(_unpack_variable)] = None#

Physical (work) address of the person.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined

field affiliation: Annotated[str | None, BeforeValidator(_unpack_variable)] = None#

Affiliation of the person.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined

field corresponding: bool = False#

Whether the person is the corresponding / contact author.

field email: Annotated[EmailStr | None, BeforeValidator(_unpack_variable)] = None#

Email address of the person.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined

classmethod from_nexus_user(group)[source]#

Construct a Person object from a Nexus NXuser group.

Parameters:

group (Group) – ScippNexus group for a NeXus group.

Returns:

Person – An Person object constructed from the given Nexus entry.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

field name: Annotated[str, BeforeValidator(_unpack_variable)] [Required]#

Free form name of the person.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined

nx_class#

alias of NXuser

field orcid_id: Annotated[ORCIDiD | None, BeforeValidator(_unpack_variable)] = None#

ORCID iD of the person.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined

field owner: bool = True#

Whether the person owns the data.

field role: Annotated[str | None, BeforeValidator(_unpack_variable)] = None#

The role that the person played in collecting / processing the data.

NeXus and CIF list possible roles.

Constraints:
  • func = <function _unpack_variable at 0x7f3f7ebf0540>

  • json_schema_input_type = PydanticUndefined