Specifying authors and contributors in technote.toml#

The technote.toml file is where you specify the authors and other contributors to a technote. This metadata is the basis for the author list in the technote’s HTML and in metadata exported from the technote HTML. For a full reference of the schema for listing authors in technote.toml, see [[technote.authors]] and [[technote.contributors]].

Minimal author metadata#

At a minimum, an author has a name. To make metadata export more precise, the preferred markup is to define both the given (first) and family (last) names:

[[technote.authors]]
name = { "given_names": "Vera", "family_names": "Rubin" }

Alternatively, the name can be an unstructured string:

[[technote.authors]]
name = { "name": "Vera C. Rubin" }

name is just one of many keys in a [[technote.authors]] table; documentation of how to add additional metadata are provided below.

Multiple authors#

To add multiple authors, add extra [[technote.authors]] tables. In TOML, the [[ ]] indicates an array of tables.

[[technote.authors]]
name = { "given_names": "Arno A.", "family_names": "Penzias" }

[[technote.authors]]
name = { "given_names": "Robert W.", "family_names": "Wilson" }

Each author can have rich metadata, as described next.

Additional author metadata#

Besides the name key, authors can have additional metadata (see the [[technote.authors]] reference). The author’s email, ORCiD identifier, an internal identifier, and affiliations can be added.

[[technote.authors]]
name = { "given_names": "Jonathan", "family_names": "Sick" }
email = "jsick@lsst.org"
orcid = "https://orcid.org/0000-0003-3001-676X"
internal_id = "sickj"

Note that any of these additional fields can be omitted if the metadata isn’t available or appropriate.

The orcid field, if set, must be a full URL, not just the path component of the ORCiD.

The internal_id is meant to have meaning within the specific organization authoring technotes. For example, Rubin Observatory keeps a database of authors. Including the internal_id enables Rubin to automatically update and augment metadata in individual technotes based on that author database.

Adding affiliations#

A [[technote.authors]] table can include an array of affiliations tables. These tables can be inline, if brief:

[[technote.authors]]
name = { given_names = "Jonathan", family_names = "Sick" }
orcid = "https://orcid.org/0000-0003-3001-676X"
affiliations = [
    { name = "J.Sick Codes" }
    { name = "Rubin Observatory", ror = "https://ror.org/048g3cy84" }
]

Or as full [[technote.authors.affiliations]] tables:

[[technote.authors]]
name = { given_names = "Jonathan", family_names = "Sick" }
orcid = "https://orcid.org/0000-0003-3001-676X"

[[technote.authors.affiliations]]
name = "J.Sick Codes"

[[technote.authors.affiliations]]
name = "Rubin Observatory", ror = "https://ror.org/048g3cy84" }
]

Non-author contributors#

People other than authors might contribute to a technote. For example, a contact, an editor, or a project manager. Each non-author contributor can be marked up with a specific role.

Each contributor To start, each contributor is a [[technote.contributors]] table. Contributors take the same keys as authors ([[technote.authors]]), but with additional role and note fields.

The role can be any string from the Zenodo vocabulary for roles (technote.metadata.zenodo.ZenodoRole).

[[technote.contributors]]
name.given_names = "Frossie"
name.family_names = "Economou"
role = "ProjectManager"

For the Other role, you can clarify it with a free-form text statement in the note key.