Start of a flat-users schema #48

Merged
mih merged 1 commit from flatentry into main 2025-08-19 08:44:02 +00:00
8 changed files with 186 additions and 0 deletions

View file

@ -16,6 +16,7 @@ all: build/mkdocs-site
build/linkml-docs: \
build/linkml-docs/s/base/unreleased \
build/linkml-docs/s/flat-base/unreleased \
build/linkml-docs/s/flat-users/unreleased \
build/linkml-docs/s/simpleinput/unreleased
build/linkml-docs/s/%: src/%.yaml src/%/extra-docs
gen-doc \
@ -55,6 +56,7 @@ check: check-models check-validation
check-models: \
checkmodel/base/unreleased \
checkmodel/flat-base/unreleased \
checkmodel/flat-users/unreleased \
checkmodel/simpleinput/unreleased
checkmodel/%: src/%.yaml
@echo [Check $<]
@ -87,6 +89,8 @@ check-validation: \
checkvalidation/base/unreleased \
convertexamples/flat-base/unreleased \
checkvalidation/flat-base/unreleased \
convertexamples/flat-users/unreleased \
checkvalidation/flat-users/unreleased \
convertexamples/simpleinput/unreleased \
checkvalidation/simpleinput/unreleased
checkvalidation/%:
@ -105,6 +109,7 @@ checkinvalid/%: src/%/validation src/%.yaml
convert-examples: \
convertexamples/base/unreleased \
convertexamples/flat-base/unreleased \
convertexamples/flat-users/unreleased \
convertexamples/simpleinput/unreleased
convertexamples/%: src/%.yaml src/%/examples
# loop over all examples, skip the schema file itself

View file

@ -13,6 +13,7 @@ schema toolbox.
- [Base schema](s/base/unreleased/index.md)
- [Flat base schema](s/flat-base/unreleased/index.md)
- [Flat users schema](s/flat-users/unreleased/index.md)
- [Simple input (deprecated)](s/simpleinput/unreleased/index.md)

View file

@ -6,6 +6,7 @@ nav:
- Schemas:
- Base (unreleased): s/base/unreleased/index.md
- Flat base (unreleased): s/flat-base/unreleased/index.md
- Flat users (unreleased): s/flat-users/unreleased/index.md
- Simple input (deprecated): s/simpleinput/unreleased/index.md
plugins:
- mermaid2
@ -16,6 +17,7 @@ plugins:
# map unversioned URLs to the latest version
's/base/index.md': 's/base/unreleased/index.md'
's/flat-base/index.md': 's/flat-base/unreleased/index.md'
's/flat-users/index.md': 's/flat-users/unreleased/index.md'
's/simpleinput/index.md': 's/simpleinput/unreleased/index.md'
- search
site_author: PsyInf group at INM-7

View file

@ -0,0 +1,129 @@
id: https://concepts.inm7.de/s/flat-users/unreleased
name: inm7-flat-users-schema
version: UNRELEASED
status: eunal:concept-status/DRAFT
title: INM7 simplified data models for manual metadata entry
description: |
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.
This schema is itself a basis for more specialized schema serving
particular use cases. The classes defined here are foundational
building block for INM7 concepts to be reused and extended for
more targeted applications.
More information is available on the schema's [about page](about).
The schema definition is available as
- [JSON-LD context](../unreleased.jsonld)
- [LinkML YAML](../unreleased.yaml)
- [OWL TTL](../unreleased.owl.ttl)
- [SHACL TTL](../unreleased.shacl.ttl)
comments:
- ALL CONTENT HERE IS UNRELEASED AND MAY CHANGE ANY TIME
license: CC-BY-4.0
prefixes:
ADMS: http://www.w3.org/ns/adms#
dash: http://datashapes.org/dash#
dcterms: http://purl.org/dc/terms/
dlidentifiers: https://concepts.datalad.org/s/identifiers/unreleased/
dlschemas: https://concepts.datalad.org/s/
dlthings: https://concepts.datalad.org/s/things/v1/
dltypes: https://concepts.datalad.org/s/types/unreleased/
eunal: http://publications.europa.eu/resource/authority/
inm7schemas: https://concepts.inm7.de/s/
inm7fb: https://concepts.inm7.de/s/flat-base/unreleased/
inm7fu: https://concepts.inm7.de/s/flat-users/unreleased/
inm7: https://inm7.de/ns/
linkml: https://w3id.org/linkml/
orcid: https://orcid.org/
owl: http://www.w3.org/2002/07/owl#
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs: http://www.w3.org/2000/01/rdf-schema#
sh: http://www.w3.org/ns/shacl#
skos: http://www.w3.org/2004/02/skos/core#
spdx: http://spdx.org/rdf/terms#
w3ctr: https://www.w3.org/TR/
xsd: http://www.w3.org/2001/XMLSchema#
default_prefix: inm7fb
emit_prefixes:
- dlidentifiers
- dlthings
- dltypes
- inm7
- rdf
- rdfs
- skos
- xsd
imports:
- inm7schemas:flat-base/unreleased
enums:
LicensedSoftware:
description: >-
Recognized license types. This is not a labeling of the actual user terms,
but of the product for which users need or request a license for.
permissible_values:
adobe:
description: Adobe Photoshop and other Adobe products
forklift:
description: Forklift file manager
matlab:
description: Matlab
matlab_toolboxes:
description: Any Matlab toolboxes
msoffice:
description: Microsoft Office
spss:
description: IBM SPSS (Statistics, and others)
zoom:
description: Zoom (videoconferencing)
UserClassification:
description: >-
Classifications of user types.
permissible_values:
inm7_fzj_employee:
description: An INM7 member that is an employee of the FZJ.
inm7_hhu_employee:
description: An INM7 member that is an employee of Heinrich Heine University Düsseldorf.
student:
description: A person associated with the INM7 as part of their training.
external:
description: An person with no formal direct affiliation with the INM7.
slots:
user_classifications:
title: Organization type
description: >-
Type of an organization.
range: UserClassification
multivalued: true
allocated_software_licenses:
title: License allocation
description: >-
Software licenses allocated for the subject.
range: LicensedSoftware
multivalued: true
classes:
User:
class_uri: inm7fu:User
is_a: Person
description: >-
A person that is a user of the INM7 IT infrastructure
slots:
# on top of the properties from `Person`
- allocated_software_licenses
- user_classifications

View file

@ -0,0 +1,24 @@
{
"pid": "inm7:persons/zorro",
"schema_type": "inm7fu:User",
"additional_names": [
"Zorro"
],
"family_name": "de la Vega",
"given_name": "Diego",
"honorific_name_prefix": "Don",
"honorific_name_suffix": "III",
"emails": [
"don@fz-juelich.de",
"dontango@hhu.de"
],
"orcid": "0000-0001-0000-0000",
"allocated_software_licenses": [
"forklift"
],
"user_classifications": [
"inm7_fzj_employee",
"inm7_hhu_employee"
],
"@type": "User"
}

View file

@ -0,0 +1,16 @@
pid: inm7:persons/zorro
family_name: de la Vega
given_name: Diego
additional_names:
- Zorro
honorific_name_prefix: Don
honorific_name_suffix: III
orcid: 0000-0001-0000-0000
emails:
- don@fz-juelich.de
- dontango@hhu.de
allocated_software_licenses:
- forklift
user_classifications:
- inm7_fzj_employee
- inm7_hhu_employee

View file

@ -0,0 +1,9 @@
schema: src/flat-users/unreleased.yaml
target_class: User
data_sources:
- src/flat-users/unreleased/examples/User-typical.yaml
plugins:
JsonschemaValidationPlugin:
closed: true
include_range_class_descendants: false
RecommendedSlotsPlugin: