2026/shacl-vue.yaml

540 lines
17 KiB
YAML

external_config_url: https://hub.trr379.de/service/mui/raw/branch/main/shacl-vue-base.yaml
# --------------------
# General app settings
# --------------------
app_name: DFG Annual Survey in Coordinated Programs
documentation_url: ''
footer_links:
- url: https://www.fz-juelich.de/en/legal-notice
text: Legal notice
- url: https://dfg-cp-survey.trr379.de/#privacy-policy
text: Privacy policy
page_title: DFG Survey
source_code_url: https://hub.trr379.de/service/mui
favicon_url: https://hub.trr379.de/service/mui/raw/branch/main/favicon.ico
# -------
# Content
# -------
content:
FrontPageHTML:
url: https://hub.trr379.de/dfgsurvey/2026/raw/branch/main/frontpage.html
doi-logo:
url: https://hub.psychoinformatics.de/datalink/assets/raw/branch/main/shacl-vue/DOI_logo_24.svg
orcid-logo:
url: https://hub.psychoinformatics.de/datalink/assets/raw/branch/main/shacl-vue/orcid_logo_24.svg
dfg-survey-status-template:
url: https://hub.trr379.de/dfgsurvey/2026/raw/branch/main/templates/dfg-cp-survey-status.nunjucks.ttl
# --------------
# Theme settings
# --------------
front_page_content: content:FrontPageHTML
app_theme:
link_color: '#ffa200'
hover_color: '#ffa200'
active_color: '#ffa201'
visited_color: '#ffa201'
panel_color: '#333333'
logo: https://hub.trr379.de/q02/dfg-cp-survey-ui/raw/branch/main/logo.png
# --------------------------
# Application inputs sources
# --------------------------
class_url: https://hub.trr379.de/dfgsurvey/2026/raw/branch/main/2026.owl.ttl
shapes_url: https://hub.trr379.de/dfgsurvey/2026/raw/branch/main/2026.shacl.ttl
# -------------------
# Identifier settings
# -------------------
id_autogenerate:
dlthings:AnnotationTag: 'trr379:annotation-tags/{_randomUUID}'
dlthings:Property: 'trr379:properties/{_randomUUID}'
dlthings:Rule: 'trr379:rules/{_randomUUID}'
trr379cps:City: 'trr379dfgsurvey:city/{_randomUUID}'
trr379cps:Country: 'trr379dfgsurvey:country/{_randomUUID}'
trr379cps:Contributor: 'trr379dfgsurvey:contributor/{_randomUUID}'
trr379cps:DSCOrganization: 'trr379dfgsurvey:organization/{_randomUUID}'
id_autogenerate_override: true
id_iri: https://concepts.datalad.org/s/things/v2/pid
id_resolves_externally:
- trr379root
prefixes:
trr379dfgsurvey: https://trr379.de/ns/dfg-cp-survey/
ror: https://ror.org/
# ------------
# UI behaviour
# ------------
allow_edit_instances:
- trr379cps:City
- trr379cps:ConsortiumParticipation
- trr379cps:DSCOrganization
- trr379cps:PromotionStatus
- trr379cps:PromotionQualifyingDegree
class_icons:
dlthings:Annotation: mdi-tag
dlthings:AnnotationTag: mdi-tag-outline
dlthings:Attribution: mdi-account-star
dlthings:AttributeSpecification: mdi-playlist-check
dlthings:DOI: mdi-identifier
dlthings:Identifier: mdi-identifier
dlthings:Project: mdi-briefcase-outline
dlthings:Property: mdi-contain-start
dlthings:Statement: mdi-comment-text-outline
trr379cps:City: mdi-city
trr379cps:ConsortiumParticipation: mdi-account-details
trr379cps:ConsortiumProject: mdi-briefcase-outline
trr379cps:Contributor: mdi-face-man
trr379cps:Country: mdi-flag
trr379cps:Discipline: mdi-puzzle-heart
trr379cps:DSCOrganization: mdi-account-group
trr379cps:Gender: mdi-gender-transgender
trr379cps:PromotionQualifyingDegree: mdi-certificate-outline
trr379cps:PromotionStatus: mdi-account-school-outline
trr379cps:Role: mdi-function-variant
trr379cps:StatusGroup: mdi-card-account-details
component_config:
NodeShapeViewer:
recordNumberStepSize: 5
textTruncateWidth: '85%'
showBlankNodes:
- trr379cps:Contributor
hideBackLinks: true
specialButtons:
ORCID:
slot: dcterms:identifier
match:
- key: rdf:type
val: trr379ri:ORCID
return: skos:notation
template: 'https://orcid.org/{return}'
icon: content:orcid-logo
tooltip: Visit ORCID page
DOI:
slot: dcterms:identifier
match:
- key: rdf:type
val: dlthings:DOI
return: skos:notation
template: 'https://doi.org/{return}'
icon: content:doi-logo
tooltip: Go to DOI
DownloadUrl:
slot: dlthings:characterized_by
match:
- key: rdf:type
val: dlthings:Statement
- key: rdf:predicate
val: dcat:downloadUrl
return: rdf:object
template: '{return}'
icon: mdi-download
tooltip: Download
Homepage:
slot: dlthings:attributes
match:
- key: rdf:type
val: dlthings:AttributeSpecification
- key: rdf:predicate
val: foaf:homepage
return: rdf:value
template: '{return}'
icon: mdi-home
tooltip: Homepage
display_name_autogenerate:
dlthings:Annotation: '{dlthings:annotation_tag} {dlthings:annotation_value}'
dlthings:Association: '{rdf:object} ({dlthings:roles})'
dlthings:AttributeSpecification: '{rdf:predicate}: {rdf:value}'
dlthings:Attribution: '{rdf:object}: ({dlthings:roles})'
dlthings:Convention: '{dlthings:short_name}'
dlthings:Checksum: '{dcterms:creator}:{skos:notation}'
dlthings:Delegation: '{rdf:object}: ({dlthings:roles})'
dlthings:DOI: 'DOI: {skos:notation}'
dlthings:End: '{dlthings:at_time}'
dlthings:Generation: '{rdf:object} {dlthings:at_location} {dlthings:at_time}'
dlthings:Identifier: '{skos:notation} ({dcterms:creator})'
dlthings:Start: '{dlthings:at_time}'
dlthings:Statement: '{rdf:predicate}: {rdf:object}'
dlthings:Quotation: '{rdf:object}'
dlthings:Rule: '{dlthings:short_name}'
dlthings:Usage: '{rdf:object} ({dlthings:roles})'
trr379cps:City: '{dlthings:name}'
trr379cps:Country: '{dlthings:name}'
trr379cps:ConsortiumParticipation: '{trr379cps:participation_start_date}-{trr379cps:participation_end_date} ({trr379cps:status_group})'
trr379cps:DSCOrganization: '{dlthings:name}'
trr379cps:Contributor: '{dlthings:given_name} {dlthings:family_name}'
trr379cps:PromotionStatus: '{trr379cps:promotion_start_date}/{trr379cps:dissertation_submission_date}/{trr379cps:oral_exam_date}'
trr379cps:PromotionQualifyingDegree: '{trr379cps:degree_type}'
filter_records_by:
- dlthings:short_name
allow_manual_pid_entry: false
no_edit_classes:
- trr379cps:Country
- trr379cps:Discipline
- trr379cps:Gender
- trr379cps:ConsortiumProject
- trr379cps:Role
show_all_fields: false
show_classes_with_prefix:
- trr379cps
priority_classes: []
# -----------------------
# Service API integration
# -----------------------
service_base_url:
- url: https://hub.trr379.de/api/dumpthings/v1/dfgsurvey-2026-main/
type: write
token_info: >-
Please log in via TRR379 Hub via the LOGIN button below, or by using user profile button in the page menu top-right.
If you have a manually created token, you can enter it below and hit SAVE.
use_service: true
use_token: true
# ----------------
# Special features
# ----------------
gitannex_p2phttp_config:
base_url: "https://hub.trr379.de/git-annex-p2phttp/git-annex"
annex_uuid: d10eeb70-bb68-4ae4-8c5a-713203d86733
client_uuid: trr379-pool-ui
use_gitannex_p2phttp: true
gitannex_p2phttp_config_wizard:
client_uuid: trr379-pool-ui
targets:
- name: TRR379 Hub
base_url: https://hub.trr379.de/git-annex-p2phttp/git-annex
repositories:
- name: Public uploads
annex_uuid: d10eeb70-bb68-4ae4-8c5a-713203d86733
# -------
# Wizards
# -------
wizard_editors:
DFGSurveySameWizard:
name: Confirm unchanged submission?
tooltip: Nothing changed? Confirm here!
icon: mdi-clipboard-check-multiple-outline
description: >-
If you submitted the DFG CP Survey in 2025 and all of your survey data remain unchanged for 2026,
please press ***Confirm*** below, and then submit your `Person` record.
To submit your `Person` record, click on the cloud-and-arrow icon in the top right menu bar of this page
(it will have a green notification) and then click `Submit`.
submit_label: Confirm
template: content:dfg-survey-status-template
wizard_editor_selection:
trr379cps:Contributor:
_record_view:
- DFGSurveySameWizard
oidc:
- name: TRR379 Hub
base_url: https://hub.trr379.de
auth_endpoint: login/oauth/authorize
token_endpoint: login/oauth/access_token
client_id: 35496203-d0bf-4e08-81b5-86eab4587e66
redirect_uri: https://hub.trr379.de/~mui/1/dfgsurvey/2026/auth/oidc-callback.html
response_type: code
code_challenge_method: S256
grant_type: authorization_code
# ---------------
# Property groups
#----------------
property_groups:
identity:
title: Identity
order: 1
# description: Add group heading tooltip information here
data:
title: Data
order: 3
personal_data:
title: Personal Data
order: 3
participation:
title: Consortium Participation
order: 4
status_group_specific:
title: Status group-specific properties
order: 5
consent:
title: Consent
order: 6
promotion_status:
title: Promotion Status
order: 4
study:
title: Study
order: 3
distribution:
title: Distribution
order: 4
temporal:
title: Temporal
order: 5
spatial:
title: Spatial
order: 6
relations:
title: Relations
order: 7
provenance:
title: Provenance
order: 8
fundamentals:
title: RDF/PROV fundamentals
order: 9
roles:
title: Roles
order: 10
rules:
title: Rules
order: 11
mappings:
title: Mappings
order: 12
# -------------
# Update shapes
#--------------
update_shapes_default:
_all_property_shapes:
dlthings:pid:
sh:minCount: 1
dcterms:type:
sh:order: 1400102
sh:group: relations
dcterms:subject:
sh:order: 1400103
sh:group: relations
update_shapes:
# Things
dlthings:Thing:
rdfs:label: All types
rdfs:comment: Here you can search through records of all types (i.e. any `Thing`)
trr379cps:Contributor:
sh:property:
dlthings:family_name:
sh:order: 10
sh:group: personal_data
dlthings:given_name:
sh:order: 11
sh:group: personal_data
dlthings:additional_names:
sh:order: 12
sh:group: personal_data
dlthings:formatted_name:
sh:order: 12.5
sh:group: personal_data
dlthings:honorific_name_prefix:
sh:order: 13
sh:group: personal_data
dlthings:honorific_name_suffix:
sh:order: 14
sh:group: personal_data
trr379cps:emails:
sh:order: 14.1
sh:group: personal_data
trr379cps:orcid:
sh:order: 14.2
sh:group: personal_data
trr379cps:gender:
sh:order: 14.3
sh:group: personal_data
trr379cps:birth_year:
sh:order: 14.4
sh:group: personal_data
trr379cps:nationality:
sh:order: 15
sh:group: personal_data
trr379cps:prior_country:
sh:order: 16
sh:group: personal_data
trr379cps:discipline:
sh:order: 17
sh:group: personal_data
trr379cps:consortium_participation:
sh:order: 30
sh:group: participation
trr379cps:primary_affiliation:
sh:order: 31
sh:group: participation
trr379cps:other_affiliations:
sh:order: 32
sh:group: participation
trr379cps:promotion_qualifying_degree:
sh:order: 40
sh:group: status_group_specific
trr379cps:promotion_status:
sh:order: 41
sh:group: status_group_specific
trr379cps:publication_consent:
sh:order: 50
sh:group: consent
trr379cps:person_identity_consent:
sh:order: 51
sh:group: consent
trr379cps:record_retention_consent:
sh:order: 52
sh:group: consent
dcterms:description:
sh:order: 1000101.1
dash:singleLine: false
shaclvue:markdown: true
sh:group: fundamentals
dlthings:attributes:
sh:order: 1000101.2
sh:group: fundamentals
dlthings:characterized_by:
sh:order: 1000101.3
sh:group: fundamentals
dlthings:relation:
sh:order: 1000101.5
trr379cps:City:
sh:property:
dlthings:name:
sh:order: 10
sh:group: data
dlthings:at_location:
sh:order: 11
sh:group: data
trr379cps:ConsortiumParticipation:
sh:property:
trr379cps:status_group:
sh:order: 10
sh:group: participation
trr379cps:participation_funding:
sh:order: 11
sh:group: participation
trr379cps:participation_start_date:
sh:order: 12
sh:group: participation
trr379cps:participation_end_date:
sh:order: 13
sh:group: participation
trr379cps:participation_project:
sh:order: 14
sh:group: participation
trr379cps:role:
sh:order: 15
sh:group: participation
trr379cps:PromotionStatus:
sh:property:
trr379cps:promotion_start_date:
sh:order: 10
sh:group: promotion_status
trr379cps:dissertation_submission_date:
sh:order: 11
sh:group: promotion_status
trr379cps:oral_exam_date:
sh:order: 12
sh:group: promotion_status
# Things that are "classifiers" (i.e., tags) without a provenance interface
# Non-Things, such as association classes
dlthings:Association:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Person
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Organization
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379AgentRole
dlthings:Attribution:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Person
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Organization
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379AgentRole
dlthings:Delegation:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Person
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Organization
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379AgentRole
dlthings:Communication:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Activity
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Competition
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Project
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Study
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379ActivityRole
dlthings:Generation:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Activity
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Competition
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Project
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Study
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379ActivityRole
dlthings:Invalidation:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
sh:or:
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Activity
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Competition
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Project
- http://www.w3.org/ns/shacl#class: https://concepts.trr379.de/s/research-information/unreleased/TRR379Study
sh:class: null
dlthings:roles:
sh:class: trr379ri:TRR379ActivityRole
dlthings:Quotation:
sh:property:
rdf:object:
dash:propertyRole: dash:KeyInfoRole
dlthings:Start:
sh:property:
dlthings:at_time:
dash:propertyRole: dash:KeyInfoRole
dlthings:End:
sh:property:
dlthings:at_time:
dash:propertyRole: dash:KeyInfoRole