More person properties #19

Merged
mih merged 1 commit from flatentry into main 2025-08-19 08:44:01 +00:00
4 changed files with 56 additions and 1 deletions

View file

@ -4,7 +4,11 @@ version: UNRELEASED
status: eunal:concept-status/DRAFT
title: INM7 simplified data models for manual metadata entry
description: |
TODO
The classes and slots in this schema have the (sole) purpose of
informing the auto-generation of UIs for data entry. Consequently,
the simplify and lump-together concepts and constructs that will
eventually be represented with more appropriate data structures
from the `base` schema.
More information is available on the schema's [about page](about).
@ -50,6 +54,15 @@ imports:
- dlschemas:things/v1
slots:
curation_comments:
description: >-
A comment about a metadata record either providing additional information for
a record curation, or leaving a comment after curation occurred. This can be
used to include information that is deemed relevant, but could not be expressed
in the provided fields.
range: string
multivalued: true
family_name:
description: >-
The (inherited) family name of the subject. In many Western languages this is the
@ -80,6 +93,17 @@ slots:
range: string
multivalued: true
emails:
description: >-
Associated email address.
range: EmailAddress
multivalued: true
orcid:
description: >-
Associated ORCID identifier (see https://orcid.org).
range: string
pattern: '^\d{4}-\d{4}-\d{4}-\d{3}[0-9X]{1}$'
classes:
Person:
@ -88,18 +112,23 @@ classes:
description: >-
A person.
slots:
- curation_comments
- additional_names
- family_name
- given_name
- honorific_name_prefix
- honorific_name_suffix
- emails
- orcid
slot_usage:
family_name:
recommended: true
annotations:
sh:name: Family name
sh:group: inm7flatentry:PersonPropertyGroup
sh:order: 1
given_name:
recommended: true
annotations:
sh:name: Given name
sh:group: inm7flatentry:PersonPropertyGroup
@ -119,3 +148,15 @@ classes:
sh:name: Suffix
sh:group: inm7flatentry:PersonPropertyGroup
sh:order: 5
emails:
recommended: true
annotations:
sh:name: Email(s)
sh:group: inm7flatentry:PersonPropertyGroup
sh:order: 6
orcid:
recommended: true
annotations:
sh:name: ORCID
sh:group: inm7flatentry:PersonPropertyGroup
sh:order: 7

View file

@ -0,0 +1,9 @@
{
"pid": "https://orcid.org/0000-0001-6398-6370",
"schema_type": "inm7flatentry:Person",
"emails": [
"m.hanke@fz-juelich.de"
],
"orcid": "0000-0001-6398-6370",
"@type": "Person"
}

View file

@ -0,0 +1,4 @@
pid: https://orcid.org/0000-0001-6398-6370
orcid: 0000-0001-6398-6370
emails:
- m.hanke@fz-juelich.de

View file

@ -2,6 +2,7 @@ schema: src/flatentry/unreleased.yaml
target_class: Person
data_sources:
- src/flatentry/unreleased/examples/Person-names.yaml
- src/flatentry/unreleased/examples/Person-props.yaml
plugins:
JsonschemaValidationPlugin:
closed: true