Skip to content

Data models for INM7 user management

The classes and slots in this schema support modeling the onboarding and offboarding workflows at the INM7.

More information may be available on the schema's about page.

The schema definition is available as

URI: https://concepts.inm7.de/s/flat-users/unreleased

Name: inm7-flat-users-schema

Schema Diagram

erDiagram Account { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } JuselessAccount { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } JuselessGroup { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } User { LicensedSoftwareList allocated_software_licenses W3CISO8601 end_date RequestableAccessoryList requested_accessories string requested_juseless_account_name RequestableLaptop requested_laptop W3CISO8601 start_date UserClassificationList user_classifications stringList additional_names string family_name string given_name string honorific_name_prefix string honorific_name_suffix EmailAddressList emails string orcid stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } ThingMixin { uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } ValueSpecificationMixin { uriorcurie range string value } AttributeSpecification { uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type uriorcurie range string value } Property { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Statement { } Thing { uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } ValueSpecification { uriorcurie range string value uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Annotation { string annotation_value } Identifier { uriorcurie creator string notation NodeUriOrCurie schema_type } IssuedIdentifier { string schema_agency uriorcurie creator string notation NodeUriOrCurie schema_type } ComputedIdentifier { uriorcurie creator string notation NodeUriOrCurie schema_type } Checksum { uriorcurie creator HexBinary notation NodeUriOrCurie schema_type } DOI { string schema_agency uriorcurie creator string notation NodeUriOrCurie schema_type } CurationAid { stringList curation_comments string display_label } Person { stringList additional_names string family_name string given_name string honorific_name_prefix string honorific_name_suffix EmailAddressList emails string orcid stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Site { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Building { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } BuildingLevel { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Organization { string name string short_name OrganizationType organization_type stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Room { string name stringList curation_comments string display_label uriorcurie pid uriorcurieList broad_mappings uriorcurieList close_mappings string description uriorcurieList exact_mappings uriorcurieList narrow_mappings uriorcurieList related_mappings NodeUriOrCurie schema_type } Account ||--}o Identifier : "identifiers" Account ||--|o Person : "record_contact" Account ||--}o Thing : "relations" Account ||--}o Annotation : "annotations" Account ||--}o AttributeSpecification : "attributes" Account ||--}o Statement : "characterized_by" JuselessAccount ||--}o JuselessGroup : "member_of" JuselessAccount ||--}o Identifier : "identifiers" JuselessAccount ||--|o Person : "record_contact" JuselessAccount ||--}o Thing : "relations" JuselessAccount ||--}o Annotation : "annotations" JuselessAccount ||--}o AttributeSpecification : "attributes" JuselessAccount ||--}o Statement : "characterized_by" JuselessGroup ||--}o Identifier : "identifiers" JuselessGroup ||--|o Person : "record_contact" JuselessGroup ||--}o Thing : "relations" JuselessGroup ||--}o Annotation : "annotations" JuselessGroup ||--}o AttributeSpecification : "attributes" JuselessGroup ||--}o Statement : "characterized_by" User ||--|o JuselessAccount : "juseless_account" User ||--}o JuselessGroup : "juseless_group_membership" User ||--}o Organization : "member_of" User ||--}o Room : "offices" User ||--}o Identifier : "identifiers" User ||--|o Person : "record_contact" User ||--}o Thing : "relations" User ||--}o Annotation : "annotations" User ||--}o AttributeSpecification : "attributes" User ||--}o Statement : "characterized_by" ThingMixin ||--}o Annotation : "annotations" ThingMixin ||--}o AttributeSpecification : "attributes" ThingMixin ||--}o Statement : "characterized_by" AttributeSpecification ||--|| Property : "predicate" AttributeSpecification ||--}o Annotation : "annotations" AttributeSpecification ||--}o AttributeSpecification : "attributes" AttributeSpecification ||--}o Statement : "characterized_by" Property ||--}o Thing : "relations" Property ||--}o Annotation : "annotations" Property ||--}o AttributeSpecification : "attributes" Property ||--}o Statement : "characterized_by" Statement ||--|| Thing : "object" Statement ||--|| Property : "predicate" Thing ||--}o Thing : "relations" Thing ||--}o Annotation : "annotations" Thing ||--}o AttributeSpecification : "attributes" Thing ||--}o Statement : "characterized_by" ValueSpecification ||--}o Thing : "relations" ValueSpecification ||--}o Annotation : "annotations" ValueSpecification ||--}o AttributeSpecification : "attributes" ValueSpecification ||--}o Statement : "characterized_by" Annotation ||--|o Thing : "annotation_tag" CurationAid ||--}o Identifier : "identifiers" CurationAid ||--|o Person : "record_contact" Person ||--}o Organization : "member_of" Person ||--}o Room : "offices" Person ||--}o Identifier : "identifiers" Person ||--|o Person : "record_contact" Person ||--}o Thing : "relations" Person ||--}o Annotation : "annotations" Person ||--}o AttributeSpecification : "attributes" Person ||--}o Statement : "characterized_by" Site ||--}o Identifier : "identifiers" Site ||--|o Person : "record_contact" Site ||--}o Thing : "relations" Site ||--}o Annotation : "annotations" Site ||--}o AttributeSpecification : "attributes" Site ||--}o Statement : "characterized_by" Building ||--|o Site : "site" Building ||--}o Identifier : "identifiers" Building ||--|o Person : "record_contact" Building ||--}o Thing : "relations" Building ||--}o Annotation : "annotations" Building ||--}o AttributeSpecification : "attributes" Building ||--}o Statement : "characterized_by" BuildingLevel ||--|o Building : "building" BuildingLevel ||--}o Identifier : "identifiers" BuildingLevel ||--|o Person : "record_contact" BuildingLevel ||--}o Thing : "relations" BuildingLevel ||--}o Annotation : "annotations" BuildingLevel ||--}o AttributeSpecification : "attributes" BuildingLevel ||--}o Statement : "characterized_by" Organization ||--|o Organization : "parent_organization" Organization ||--}o Person : "leaders" Organization ||--}o Identifier : "identifiers" Organization ||--|o Person : "record_contact" Organization ||--}o Thing : "relations" Organization ||--}o Annotation : "annotations" Organization ||--}o AttributeSpecification : "attributes" Organization ||--}o Statement : "characterized_by" Room ||--|o BuildingLevel : "building_level" Room ||--}o Identifier : "identifiers" Room ||--|o Person : "record_contact" Room ||--}o Thing : "relations" Room ||--}o Annotation : "annotations" Room ||--}o AttributeSpecification : "attributes" Room ||--}o Statement : "characterized_by"
Press "Alt" / "Option" to enable Pan & Zoom

Classes

Class Description
Annotation A tag/value pair with the semantics of OWL Annotation.
AttributeSpecification An attribute is conceptually a thing, but it requires no dedicated identifier (pid). Instead, it is linked to a Thing via its attributes slot and declares a predicate on the nature of the relationship.
CurationAid Technical helper providing curation-related slots.
Identifier An identifier is a label that uniquely identifies an item in a particular context. Some identifiers are globally unique. All identifiers are unique within their individual scope.
        ComputedIdentifier An identifier that has been derived from information on the identified entity.
                Checksum A Checksum is a value that allows to check the integrity of the contents of a file. Even small changes to the content of the file will change its checksum. This class allows the results of a variety of checksum and cryptographic message digest algorithms to be represented.
        IssuedIdentifier An identifier that was issued by a particular agent with a notation that has no (or an undefined) relation to the nature of the identified entity.
                DOI Digital Object Identifier (DOI; ISO 26324), an identifier system governed by the DOI Foundation, where individual identifiers are issued by one of several registration agencies.
Statement An RDF statement that links a predicate (a Property) with an object (a Thing) to the subject to form a triple. A Statement is used to qualify a relation to a Thing referenced by its identifier. For specifying a qualified relation to an attribute that has no dedicated identifier, use an AttributeSpecification.
Thing The most basic, identifiable item. In addition to the slots that are common between a Thing and an AttributeSpecification (see ThingMixin), two additional slots are provided. The pid slot takes the required identifier for a Thing. The relation slot allows for the inline specification of other Thing instances. Such a relation is unqualified (and symmetric), and should be further characterized via a Statement (see characterized_by). From a schema perspective, the relation slots allows for building self-contained, structured documents (e.g., a JSON object) with arbitrarily complex information on a Thing.
        Account Authorization to access resources on a system.
                JuselessAccount User account on the Juseless system
                JuselessGroup Unix group on the Juseless system
        Building A structure with a roof and walls.
        BuildingLevel A single level or floor of a (multilevel) building.
        Organization A social or legal institution such as a company, a society, or a university.
        Person A person.
                User A person that is a user of the INM7 IT infrastructure
        Property An RDF property, a Thing used to define a predicate, for example in a Statement.
        Room An area within a building enclosed by walls and floor and ceiling.
        Site A place or region where entities (building, office, etc.) reside.
        ValueSpecification A Thing that is a value of some kind. This class can be used to describe an outcome of a measurement, a factual value or constant, or other qualitative or quantitative information with an associated identifier. If no identifier is available, an AttributeSpecification can be used within the context of an associated Thing (attributes).
ThingMixin Mix-in with the common interface of Thing and AttributeSpecification. This interface enables type specifications (rdf:type) for things and attributes via a type designator slot to indicate specialized schema classes for validation where a slot's range is too generic. A thing or attribute can be further describe with statements on qualified relations to other things (characterized_by), or inline attributes (attributes). A set of mappings slots enables the alignment for arbitrary external schemas and terminologies.
ValueSpecificationMixin Mix-in for a (structured) value specification. Two slots are provided to define a (literal) value (value) and its type (range).

Slots

Slot Description
additional_names Additional name(s) associated with the subject, such as one or more middle na...
allocated_software_licenses Software licenses allocated for the subject
annotation_tag A tag identifying an annotation
annotation_value The actual annotation
annotations A record of properties of the metadata record on a subject, a collection of t...
attributes Declares a relation that associates a Thing (or another attribute) with an ...
broad_mappings A list of terms from different schemas or terminology systems that have broad...
building Building where the subject is located
building_level Building level where the subject is located
characterized_by Qualifies relationships between a subject Thing and an object Thing with ...
close_mappings A list of terms from different schemas or terminology systems that have close...
creator An agent responsible for making an entity
curation_comments A comment about a metadata record either providing additional information for...
description A free-text account of the subject
display_label Label to shown when the record is displayed as an item
emails Associated email address
end_date Timepoint at which the subject ends or ended
exact_mappings A list of terms from different schemas or terminology systems that have ident...
family_name The (inherited) family name of the subject
given_name The given (non-inherited) name of the subject
honorific_name_prefix The honorific prefix(es) of the subject's name
honorific_name_suffix The honorific suffix(es) of the subject's name
identifiers An unambiguous reference to the subject within a given context
juseless_account Assigned account on the Juseless system
juseless_group_membership Groups on the Juseless system this user needs be a member of
leaders Person(s) that are formal or informal leaders of the subject
mappings A list of terms from different schemas or terminology systems that have compa...
member_of The subject is a member of an organization
name Name of the subject
narrow_mappings A list of terms from different schemas or terminology systems that have narro...
notation String of characters such as "T58:5" or "30:4833" used to uniquely identify a...
object Reference to a Thing within a Statement
offices Room(s) that are the office(s) of the subject
orcid Associated ORCID identifier (see https://orcid
organization_type Type of an organization
parent_organization An organization the subject is a part of
pid Persistent and globally unique identifier of a Thing
predicate Reference to a Property within a Statement
range Declares that the value of a Thing or AttributeSpecification are instance...
record_contact Person to contact regarding questions about information in this metadata reco...
related_mappings A list of terms from different schemas or terminology systems that have relat...
relations Declares an unqualified relation of the subject Thing to another Thing
requested_accessories The standard workplace package is a Dell 27-inch screen with built-in USB-C d...
requested_juseless_account_name Name of a (to be created) account
requested_laptop Mac or Lenovo laptops can be provided
schema_agency Name of the agency that issued an identifier
schema_type State that the subject is an instance of a particular schema class
short_name A shortened name for the subject
site Site where the subject is located
start_date Timepoint at which the subject starts or started
user_classifications Type classifications for users
value Value of a thing

Enumerations

Enumeration Description
LicensedSoftware Recognized license types
OrganizationType Classification of organizations
RequestableAccessory Requestable accessories for INM-7 users
RequestableLaptop Requestable configurations for INM-7 provided laptops
UserClassification Classifications of user types

Types

Type Description
Boolean A binary (true or false) value
Curie a compact URI
Date a date (year, month and day) in an idealized calendar
DateOrDatetime Either a date or a datetime
Datetime The combination of a date and time
Decimal A real number with arbitrary precision that conforms to the xsd:decimal speci...
Double A real number that conforms to the xsd:double specification
EmailAddress RFC 5322 compliant email address
Float A real number that conforms to the xsd:float specification
HexBinary hex-encoded binary data
Integer An integer
Jsonpath A string encoding a JSON Path
Jsonpointer A string encoding a JSON Pointer
Ncname Prefix part of CURIE
Nodeidentifier A URI, CURIE or BNODE that represents a node in a model
NodeUriOrCurie A type referencing an graph node
NonNegativeInteger An integer
Objectidentifier A URI or CURIE that represents an object in the model
Sparqlpath A string encoding a SPARQL Property Path
String A character string
Time A time object represents a (local) time of day, independent of any particular...
Uri a complete URI
Uriorcurie a URI or a CURIE
W3CISO8601 W3C variant/subset of IS08601 for specifying date(times)

Subsets

Subset Description