From 3311345a2b3f1b0a7e1f632121004a44ef731389 Mon Sep 17 00:00:00 2001 From: Stephan Heunis Date: Thu, 10 Sep 2026 22:54:36 +0200 Subject: [PATCH] First attempt at schema update to use things/v2, prov mixins, and more - removed all old datalad-concepts 'prefixes', replaced with latest ones (also in 'emit_prefixes') - add latest datalad-concepts schema 'imports' - remove 'YYYY' and 'YYYYMM' types - changed all ranges of date-related slots to 'W3CISO8601' - changed 'is_a: FlatThing' to 'is_a: Thing' - added PROV mixins to relevant classes - removed all 'sh:order' annotations --- src/dfg-cp-survey/unreleased.yaml | 200 +++++++----------------------- 1 file changed, 42 insertions(+), 158 deletions(-) diff --git a/src/dfg-cp-survey/unreleased.yaml b/src/dfg-cp-survey/unreleased.yaml index 938da3f..f0ca3a1 100644 --- a/src/dfg-cp-survey/unreleased.yaml +++ b/src/dfg-cp-survey/unreleased.yaml @@ -22,16 +22,10 @@ prefixes: ADMS: http://www.w3.org/ns/adms# dash: http://datashapes.org/dash# dcterms: http://purl.org/dc/terms/ - dlcommonmx: https://concepts.datalad.org/s/common-mixin/unreleased/ - dlflat: https://concepts.datalad.org/s/flat/unreleased/ - dlflatsocial: https://concepts.datalad.org/s/flat-social/unreleased/ - dlidentifiers: https://concepts.datalad.org/s/identifiers/unreleased/ - dlrelationsmx: https://concepts.datalad.org/s/relations-mixin/unreleased/ + dldi: https://pid.datalad.org/distributions/ dlschemas: https://concepts.datalad.org/s/ - dlsocialmx: https://concepts.datalad.org/s/social-mixin/unreleased/ - dlspatialmx: https://concepts.datalad.org/s/spatial-mixin/unreleased/ - dlthings: https://concepts.datalad.org/s/things/v1/ - dltypes: https://concepts.datalad.org/s/types/v1/ + dlthings: https://concepts.datalad.org/s/things/v2/ + dlvocab: https://concepts.datalad.org/vocab/ # declare a namespace for emails, such that they can be defined as a curie # e.g.: email:me@example.org # -> https://concepts.datalad.org/ns/email/me@example.org @@ -63,14 +57,8 @@ prefixes: default_prefix: trr379cps emit_prefixes: - - dlcommonmx - - dlflat - - dlflatsocial - - dlidentifiers - - dlsocialmx - - dlspatialmx + - dldi - dlthings - - dltypes - trr379root - trr379 - trr379cps @@ -80,28 +68,14 @@ emit_prefixes: - xsd imports: - - dlschemas:flat-social/unreleased - - -types: - YYYY: - # gen-shacl doesn't work without this - uri: trr379cps:YYYY - base: str - typeof: string - description: - W3C variant/subset of IS08601 for specifying a year using a four-digit string - pattern: '^\d{4}$' - - YYYYMM: - # gen-shacl doesn't work without this - uri: trr379cps:YYYYMM - base: str - typeof: string - description: - W3C variant/subset of IS08601 for specifying a month in a particular year - as a YYYY-MM string (eg 1997-07) - pattern: '^(\d{4}-[01]\d)$' + - dlschemas:things-data/v1 + - dlschemas:things-files/v1 + - dlschemas:things-publications/v1 + - dlschemas:things-resources/v1 + - dlschemas:things-prov/v1 + - dlschemas:things-social/v1 + - dlschemas:things-study/v1 + - dlschemas:things-rules/v1 enums: PromotionStatusClassification: @@ -190,13 +164,13 @@ slots: title: Doctoral project start date description: >- Estimated date on which doctoral work began. - range: YYYYMM + range: W3CISO8601 degree_date: title: Date received description: >- Date when the qualifying degree was received. - range: YYYYMM + range: W3CISO8601 degree_institution: title: Degree granting institution @@ -207,13 +181,13 @@ slots: title: Dissertation submission date description: >- Date when the dissertation was submitted. - range: YYYYMM + range: W3CISO8601 oral_exam_date: title: Date of a passed oral examination description: >- Date of a successfully concluded dissertation defense, disputation, rigorosum, or similar. - range: YYYYMM + range: W3CISO8601 promotion_status: title: "For (previous) doctoral researchers: Doctoral project status" @@ -251,13 +225,13 @@ slots: title: Start date description: >- Start of this participation in the consortium. - range: YYYYMM + range: W3CISO8601 participation_end_date: title: End date description: >- End of this participation in the consortium. - range: YYYYMM + range: W3CISO8601 participation_funding: title: Funding @@ -282,7 +256,7 @@ slots: title: Birth year description: >- Year a person was born - range: YYYY + range: W3CISO8601 nationality: title: Nationality @@ -323,6 +297,7 @@ slots: Only to be provided for non-medical doctoral researchers. range: PromotionQualifyingDegree + role: title: Role (required for other scientifically engaged personnel) description: >- @@ -365,7 +340,9 @@ slots: classes: Gender: - is_a: FlatThing + is_a: Thing + mixins: + - EntityMixin description: >- Fixed set of gender categories of a person, as defined and distinguished by the DFG. @@ -374,8 +351,6 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 display_label: recommended: true exact_mappings: @@ -383,6 +358,8 @@ classes: Contributor: is_a: Person + mixins: + - AgentMixin # we want to keep the display title to retain compatibility with # existing documentation title: Person @@ -408,84 +385,41 @@ classes: slot_usage: family_name: required: true - annotations: - sh:order: 1 given_name: required: true - annotations: - sh:order: 2 - additional_names: - annotations: - sh:order: 3 - honorific_name_prefix: - annotations: - sh:order: 4 - honorific_name_suffix: - annotations: - sh:order: 5 gender: required: true - annotations: - sh:order: 6 birth_year: required: true - annotations: - sh:order: 7 nationality: required: true multivalued: true - annotations: - sh:order: 8 discipline: required: true - annotations: - sh:order: 8 prior_country: required: true - annotations: - sh:order: 9 emails: recommended: true - annotations: - sh:order: 10 orcid: recommended: true - annotations: - sh:order: 11 primary_affiliation: required: true range: DSCOrganization - annotations: - sh:order: 12 other_affiliations: range: DSCOrganization - annotations: - sh:order: 13 consortium_participation: required: true - annotations: - sh:order: 14 - promotion_qualifying_degree: - annotations: - sh:order: 15 - promotion_status: - annotations: - sh:order: 16 publication_consent: required: true - annotations: - sh:order: 17 person_identity_consent: required: true - annotations: - sh:order: 18 record_retention_consent: required: true - annotations: - sh:order: 19 DSCOrganization: is_a: Organization + mixins: + - AgentMixin title: Organization description: >- A social or legal institution such as a company, a society, @@ -493,27 +427,18 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 - short_name: - annotations: - sh:order: 2 at_location: required: true range: City - annotations: - sh:order: 3 part_of: range: DSCOrganization - annotations: - sh:order: 4 display_label: recommended: true - annotations: - sh:order: 5 ConsortiumProject: is_a: Project + mixins: + - ActivityMixin title: Project description: >- TRR379 projects, as formally defined in the grant application @@ -521,7 +446,9 @@ classes: See https://www.trr379.de/projects City: - is_a: FlatThing + is_a: Thing + mixins: + - EntityMixin description: >- Incorporated populated place. slots: @@ -530,21 +457,19 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 at_location: required: true title: Country range: Country - annotations: - sh:order: 2 display_label: recommended: true exact_mappings: - obo:ENVO_00000856 Country: - is_a: FlatThing + is_a: Thing + mixins: + - EntityMixin description: >- A political association with effective dominion over a geographic area. slots: @@ -552,15 +477,15 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 display_label: recommended: true exact_mappings: - obo:ENVO_00000009 StatusGroup: - is_a: FlatThing + is_a: Thing + mixins: + - EntityMixin description: >- Fixed set of personnel status groups, as defined and distinguished by the DFG. @@ -569,15 +494,15 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 display_label: recommended: true broad_mappings: - vcard:Group Discipline: - is_a: FlatThing + is_a: Thing + mixins: + - EntityMixin description: >- Fixed set of knowledge and study branches, as defined by the Federal Statistical Office of Germany (https://www.destatis.de), @@ -591,20 +516,12 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 part_of: range: Discipline - annotations: - sh:order: 2 parts: range: Discipline - annotations: - sh:order: 3 display_label: recommended: true - annotations: - sh:order: 4 exact_mappings: - obo:GSSO_002345 @@ -619,17 +536,11 @@ classes: slot_usage: degree_type: required: true - annotations: - sh:order: 1 degree_date: required: true - annotations: - sh:order: 2 degree_institution: required: true range: DSCOrganization - annotations: - sh:order: 3 PromotionStatus: description: >- @@ -638,16 +549,6 @@ classes: - promotion_start_date - dissertation_submission_date - oral_exam_date - slot_usage: - promotion_start_date: - annotations: - sh:order: 1 - dissertation_submission_date: - annotations: - sh:order: 2 - oral_exam_date: - annotations: - sh:order: 3 ConsortiumParticipation: description: >- @@ -662,28 +563,13 @@ classes: slot_usage: participation_start_date: required: true - annotations: - sh:order: 1 participation_funding: required: true - annotations: - sh:order: 2 status_group: required: true - annotations: - sh:order: 3 - participation_project: - annotations: - sh:order: 4 - role: - annotations: - sh:order: 5 - participation_end_date: - annotations: - sh:order: 6 Role: - is_a: FlatThing + is_a: Thing description: >- Function in a project for persons classified as "other scientifically engaged personnel" regarding their status group. @@ -692,7 +578,5 @@ classes: slot_usage: name: required: true - annotations: - sh:order: 1 display_label: recommended: true -- 2.52.0