Zum Hauptinhalt springen

Spezifikation

Mittels Annotationen in YAML kann die Applikation konfiguriert werden. Nachfolgend ist eine Spezifikation aller Schlüssel, mit denen bestehende Elementtypen und Properties angepasst bzw. neue Properties definiert werden können.

properties

Der Schlüssel properties definiert eine Liste von geänderten, bestehenden Properties eines Elementtyps. Jede bestehende Property wird mit dem technischen Namen (laut Metamodell) angegeben.

# Bestehende Property 'title' umbenennen
BusinessAttribute:
properties:
title:
label: Überschrift
Tooltipp

Der Schlüssel label definiert die Bezeichnung der Property.

Hinweis

Ausschließlich Properties, die standardmäßig im Metamodell vorhanden sind, dürfen in der Liste angegeben und angepasst werden. Properties, die nicht im Metamodell definiert sind, müssen als kundenspezifische customProperties konfiguriert werden.

customProperties

Der Schlüssel customProperties definiert eine Liste von neuen, kundenspezifischen Properties eines Elementtyps. Jede neue Property wird mit einem technischen Namen angegeben. Dieser technische Name muss die Property eindeutig identifizieren und darf nicht mit anderen, vorhandenen Properties des Elementtyps kollidieren.

# Neue Properties 'confidentiality' und 'priority'
BusinessAttribute:
customProperties:
confidentiality:
label: Vertraulichkeit
baseType: STRING
priority:
label: Priorität
baseType: INTEGER
Tooltipp

Der Schlüssel baseType definiert den Datentyp der Property.

Neue Properties werden Teil des Metamodells. Sie werden beim jeweiligen Element in der Benutzeroberfläche als Eingabefelder angezeigt. Ebenso werden neue Properties in den Schnittstellen beim Import und Export berücksichtigt.

Tooltipp

Der Schlüssel customProperties darf für alle Elementtypen, die in der Hierarchie von Asset ableiten, sowie für Issue definiert werden.

Hinweis

Der technische Name einer kundenspezifischen Property muss mit einem Buchstaben, : oder _ beginnen und darf danach nur Buchstaben, Ziffern, ., :, - oder _ jedoch keine Leerzeichen oder andere Sonderzeichen (/, &, ?, <, >, +, =, usw.) enthalten.

customFunctions

Der Schlüssel customFunctions definiert eine Liste von kundenspezifischen Funktionen eines Elementtyps. Jede kundenspezifische Funktion definiert mit dem Schlüssel href einen Link auf eine externe Webseite bzw. Applikation und wird in der Benutzeroberfläche als Eintrag im Menü des Elements angezeigt. Durch Klick auf den Eintrag im Menü wird die externe Webseite bzw. Applikation geöffnet.

Asset:
customProperties:
# Kundenspezifische Property `additionalText`
additionalText:
label: Zusatztext
labelEn: Additional text
baseType: TEXT

customFunctions:
# Kundenspezifische Funktion, um im Internet nach der Bezeichnung zu suchen
searchGoogle:
label: Google Suche
labelEn: Google Search
title: Suche nach der Bezeichnung in Google
titleEn: Search for the label in Google
icon: brand-google
href: "https://www.google.com/search?q=${this.label}"
# Kundenspezifische Funktion, um die kundenspezifische Property `additionalText` zu übersetzen
translateAdditionalText:
label: Zusatztext übersetzen
labelEn: Translate additional text
title: Den Zusatztext mithilfe von Google translate übersetzen
titleEn: Translate the additional text using Google translate
icon: language
href: "https://translate.google.com/?sl=de&tl=en&text=${this.additionalText}&op=translate"
Tooltipp

Die Schlüssel label, title und icon definieren die Bezeichnung, die Beschreibung und das Symbol der kundenspezifischen Funktion, so wie sie im Menü angezeigt wird.

In der Benutzeroberfläche werden die kundenspezifischen Funktionen als Einträge im Menü des Elements angezeigt:

CustomFunctions

Optional kann der Link mittels Platzhalter parametrisiert werden, um Werte des Elements (z.B. Bezeichnung, Zusatztext) an definierten Stellen einzusetzen. Platzhalter werden mit ${} definiert und beziehen sich auf einen Wert des Elements. Beim Klick ins Menü des geöffneten Elements werden die Platzhalter durch die tatsächlichen Werte des Elements ersetzt.

Es können alle Properties des Elements sowie einige weitere, ausgewählte Werte angegeben werden:

PlatzhalterBeschreibung
${this.*}Mit this. gefolgt vom technischen Namen einer Property können alle Properties, die standardmäßig im Metamodell vorhanden sind (z.B. ${this.label}, ${this.description}, ${this.tags}), sowie alle kundenspezifischen Properties (z.B. ${this.additionalText}) des Elements angegeben werden.
${user.userName}Der Name des eingeloggten Benutzers.
${user.loginId}Die Benutzerkennung des eingeloggten Benutzers.
${tenant.tenantName}Der Name des gewählten Mandanten.
${tenant.tenantId}Die UUID des gewählten Mandanten.
Hinweis

Der Eintrag im Menü wird nur angezeigt, wenn alle Platzhalter, die in href angegeben sind, aufgelöst werden können und einen Wert haben. Zum Beispiel, falls der Platzhalter ${this.additionalText} in href angegeben ist, wird die kundenspezifische Funktion im Menü des Elements nur angezeigt wenn die Property additionalText im Element nicht leer ist.

label

Der Schlüssel label definiert die Bezeichnung eines Elementtyps, einer Property oder des Wertes einer Liste (literals). Die Bezeichnungen werden in der Benutzeroberfläche (z.B. neben den entsprechenden Eingabefeldern oder als Werte einer Dropdown-Liste) angezeigt sowie beim Upload/Download in Excel und in Reports berücksichtigt.

Zusätzlich zur Standardsprache (Deutsch) ist es möglich, die Bezeichnung in anderen Sprachen anzugeben:

  • label definiert die Bezeichnung auf Deutsch (Standardsprache)
  • labelEn definiert die Bezeichnung auf Englisch
# Elementtyp 'BusinessAttribute' umbenennen
BusinessAttribute:
label: Eigenschaft
labelEn: Property
ling: s3p3f
Tooltipp

Der Schlüssel ling gibt die Deklinationsklasse der Bezeichnung an. Die Deklinationsklasse ist nur für Bezeichnungen auf Deutsch relevant.

# Property 'title' umbenennen und neue Property 'confidentiality'
BusinessAttribute:
properties:
title:
label: Überschrift
labelEn: Caption
customProperties:
confidentiality:
label: Vertraulichkeit
labelEn: Confidentiality

# Bezeichnungen von `literals` definieren
Derivation:
properties:
qualifier:
literals:
SPOT:
label: SPOT
labelEn: SPOT
GOLD:
label: Golden Source
labelEn: Golden record
Tooltipp

Mit dem Schlüssel stereotype können Elementtypen stereotypisiert werden. Der Schlüssel label bzw. labelEn definiert dabei für jeden Stereotyp eine eigene Bezeichnung.

title

Der Schlüssel title definiert die Beschreibung eines Elementtyps, einer Property oder des Wertes einer Liste (literals). Die Beschreibungen werden als Tooltipps in der Benutzeroberfläche (z.B. als Mouseover über die entsprechenden Eingabefelder oder Werte einer Dropdown-Liste) eingeblendet.

Zusätzlich zur Standardsprache (Deutsch) ist es möglich, die Beschreibung in anderen Sprachen anzugeben:

  • title definiert die Beschreibung auf Deutsch (Standardsprache)
  • titleEn definiert die Beschreibung auf Englisch
# Neue Property 'confidentiality' mit Beschreibung
BusinessAttribute:
customProperties:
confidentiality:
label: Vertraulichkeit
labelEn: Confidentiality
title: Die Vertraulichkeitsklassifikation eines Attributs
titleEn: The confidentiality classification of an attribute
Tooltipp

Mit dem Schlüssel stereotype können Elementtypen stereotypisiert werden. Der Schlüssel title bzw. titleEn definiert dabei für jeden Stereotyp eine eigene Beschreibung.

icon

Der Schlüssel icon definiert das Symbol eines Elementtyps, einer Property oder des Wertes einer Liste (literals). Die Symbole werden in der Benutzeroberfläche (z.B. neben den entsprechenden Eingabefeldern oder neben den Werten einer Dropdown-Liste) angezeigt.

Hinweis

In der Applikation werden Symbole aus der Bibliothek Font Awesome (Version 7.1) verwendet.

Die in Font Awesome angegebenen Namen der Symbole können in der Konfiguration direkt eingesetzt werden.

# Symbol des Elementtyps 'BusinessAttribute' ändern
BusinessAttribute:
icon: unicorn

# Symbole von `literals` definieren
Measurement:
properties:
qualityRating:
label: Qualitätsrating
literals:
EXCELLENT:
label: Exzellent
icon: traffic-light-go
FAIR:
label: Mittelmäßig
icon: traffic-light-slow
BAD:
label: Schlecht
icon: traffic-light-stop

Fast alle Symbole sind im Stil solid, regular (default), light und thin vorhanden. Der Stil wird vor dem Namen des Symbols mit einem Bindestrich eingefügt.

Hinweis

Falls kein Stil angegeben wird, wird der Stil regular automatisch verwendet.

# Symbol des Elementtyps 'BusinessAttribute' ändern
BusinessAttribute:
icon: solid-unicorn

Um ein Symbol aus der Kategorie "Brands" zu verwenden, wird brand vor dem Namen des Symbols mit einem Bindestrich eingefügt (z.B. brand-facebook).

Tooltipp

Mit dem Schlüssel stereotype können Elementtypen stereotypisiert werden. Der Schlüssel icon definiert dabei für jeden Stereotyp ein eigenes Symbol.

Hinweis

Falls ein Symbol aus technischen Gründen nicht korrekt dargestellt werden kann, wird es durch das Symbol face-thinking ersetzt.

baseType

Der Schlüssel baseType definiert den Datentyp einer Property. Der Datentyp legt fest, welche Werte im entsprechenden Eingabefeld in der Benutzeroberfläche eingegeben werden können.

baseTypeBeschreibungDarstellung in der Benutzeroberfläche
STRINGZeichenketteZeichenkette
TEXTFormatiertes TextfeldText
DECIMALDezimalzahlDezimalzahl
INTEGERGanzzahlGanzzahl
BOOLEANWahrheitswert
(Ja/Nein)
Wahrheitswert
BINARYBinärdatenBinärdaten
DATEDatumDatum
TIMEUhrzeitUhrzeit
DATETIMEZeitpunkt
(Datum und Uhrzeit)
Zeitpunkt
DURATIONZeitdauerZeitdauer
CODECodeCode
IDIdentifierIdentifier
# Neue Property 'confidentiality' mit Datentyp `BOOLEAN`
BusinessObject:
customProperties:
confidentiality:
label: Vertraulich
baseType: BOOLEAN
Tooltipp

Falls bei einer Property sowohl der Schlüssel baseType als auch der Schlüssel literals definiert ist, dann wird der Schlüssel baseType ignoriert.

Achtung

Je nach baseType werden die Properties unterschiedlich in der Datenbank gespeichert. Falls der baseType einer bestimmten Property geändert wird, können Werte, die zuvor mit dem ursprünglichen baseType gespeichert wurden, möglicherweise nicht korrekt verarbeitet werden, da ihr gespeicherter Wert nicht mit dem neuen baseType kompatibel ist. Vor der Änderung von baseType sollte daher sichergestellt werden, dass die Werte aller betroffenen Properties gelöscht sind.

literals

Der Schlüssel literals definiert die Liste von gültigen Werten einer Property. Das entsprechende Eingabefeld wird in der Benutzeroberfläche als Dropdown-Liste angezeigt.

Jeder Wert hat einen technischen Namen und eine Bezeichnung (label). Die Bezeichnung wird in der Benutzeroberfläche als Beschriftung der einzelnen Einträge in der Dropdown-Liste verwendet sowie beim Upload/Download in Excel. Der technische Name wird in allen anderen technischen Schnittstellen (Metadata REST/API, Metadata Upload/Download) verwendet.

# Neue Property 'direction' mit Liste von gültigen Werten
BusinessAttribute:
customProperties:
direction:
label: Richtung
literals:
LEFT:
label: Links
icon: left
order: 1
RIGHT:
label: Rechts
icon: right
order: 2
Tooltipp

Bei der Definition der Werte können die Schlüssel label, title, icon und order verwendet werden, um die Werte entsprechend zu beschriften bzw. anzuordnen.

Es ist möglich, bestimmte bestehende Properties, die bereits literals definiert haben, zu bearbeiten. Dabei können vorhandene Werte entfernt oder umbenannt sowie neue Werte hinzugefügt werden.

Die folgende Tabelle zählt bestehende Properties auf, die mit literals überschrieben werden können.

ElementtypPropertyliterals (Bezeichnung)
ProcessinglawfulBasisCONSENT (Einwilligung)
CONTRACT (Vertragserfüllung)
LEGAL (Rechtliche Verpflichtung)
VITAL (Vitales Interesse)
PUBLIC (Öffentliches Interesse)
LEGIT (Berechtigte Interessen)
DatasetaccrualPeriodicity001 (kontinuierlich)
002 (täglich)
003 (wöchentlich)
004 (14-tägig)
005 (monatlich)
006 (quartalsweise)
007 (halbjährlich)
008 (jährlich)
009 (nach Bedarf)
010 (unregelmäßig)
011 (nicht geplant)
012 (unbekannt)
DistributionformatCSV (CSV)
HTML (HTML)
JSON (JSON)
DOC (DOC)
XLS (XLS)
RDF (RDF)
RSS (RSS)
TXT (TXT)
XML (XML)
PDF (PDF)
MeasureunitMeasureNUM (Anzahl)
YEAR (Jahre)
PC (Prozent)
EUR (Euro)
MeasurecalculationDateEOM (Monatsultimo)
EOD (Ende des Tages)
DerivationqualifierSPOT (SPOT)
GOLD (Golden Source)
CompositionqualifierGROUP (Gruppierung)
FILTER (Filter)
UsagequalifierIN (Input)
OUT (Output)
MeasurementqualityRatingEXCELLENT (Exzellent)
GOOD (Gut)
FAIR (Mittelmäßig)
POOR (Mangelhaft)
BAD (Schlecht)
Persongender0 (unbekannt)
1 (männlich)
2 (weiblich)
9 (nicht anwendbar)
EnumerationstringTypeALPHABETIC (alphabetisch)
NUMERIC (numerisch)
ALPHANUMERIC (alphanumerisch)
Hinweis

Der Schlüssel literals bei bestehenden Properties ersetzt die ganze Liste. Deshalb müssen alle Werte, die nicht gelöscht werden sollen, in der neuen Liste nochmals angegeben werden.

# 'EOM' entfernen, 'EOY' hinzufügen, 'EOD' behalten
Measure:
properties:
calculationDate:
literals:
EOD:
label: Ende des Tages
order: 1
EOY:
label: Ende des Jahres
order: 2
Tooltipp

Falls bei einer Property sowohl der Schlüssel baseType als auch der Schlüssel literals definiert ist, dann wird der Schlüssel baseType ignoriert. Falls der Schlüssel cardinality den Wert MANY hat erlaubt die Dropdown-Liste in der Benutzeroberfläche eine Mehrfachauswahl.

order

Der Schlüssel order definiert die Reihenfolge von Properties oder von Werten einer Liste (literals). Die Reihenfolge wird in der Benutzeroberfläche (z.B. die Anordnung der entsprechenden Eingabefeldern oder der Werte einer Dropdown-Liste) sowie beim Upload/Download in Excel und in Reports berücksichtigt.

Die vergebene Ordnungszahl muss innerhalb der definierten Werte eindeutig sein.

# Neue Properties 'priority' und 'confidentiality' mit bestimmter Reihenfolge
BusinessAttribute:
customProperties:
priority:
label: Prioriät
order: 20 # wird nach 'confidentiality' angezeigt
confidentiality:
label: Vertraulichkeit
order: 10

Die Reihenfolge bestehender Properties kann nicht verändert werden. Bei neuen, kundenspezifischen Properties werden die entsprechenden Eingabefelder in der Benutzeroberfläche immer hinter den Eingabefeldern von bestehenden Properties gereiht.

Tooltipp

Mit dem Schlüssel group können kundenspezifische Properties in der Benutzeroberfläche in Gruppen dargestellt werden.

cardinality

Der Schlüssel cardinality definiert die Kardinalität einer Property. Die Kardinalität legt fest, ob die Property einen oder mehrere Werte fassen kann.

cardinalityBeschreibungDarstellung in der Benutzeroberfläche
ONE (default)Das Eingabefeld lässt eine Einfachauswahl zuONE
MANYDas Eingabefeld lässt eine Mehrfachauswahl zuMANY
# Neue Property 'color' mit Mehrfachauswahl
BusinessAttribute:
customProperties:
color:
label: Farbe
cardinality: MANY
literals:
RED:
label: Rot
GREEN:
label: Grün
BLUE:
label: Blau
Tooltipp

Der Schlüssel cardinality wird nur berücksichtigt, wenn der Schlüssel baseType den Wert STRING hat oder der Schlüssel literals definiert ist.

Achtung

Je nach cardinality werden die Properties unterschiedlich in der Datenbank gespeichert. Falls die cardinality einer bestimmten Property geändert wird, können Werte, die zuvor mit der ursprünglichen cardinality gespeichert wurden, möglicherweise nicht korrekt verarbeitet werden, da ihr gespeicherter Wert nicht mit der neuen cardinality kompatibel ist. Vor der Änderung von cardinality sollte daher sichergestellt werden, dass die Werte aller betroffenen Properties gelöscht sind.

width

Der Schlüssel width definiert die Breite einer Property. Die Breite wird in der Benutzeroberfläche bei der Anordnung der entsprechenden Eingabefelder berücksichtigt.

widthBeschreibung
1 (default)Es passen zwei Eingabefelder nebeneinander in eine Zeile, d.h. das Eingabefeld nimmt nur die halbe Breite ein.
2Es passt nur ein Eingabefeld in eine Zeile, d.h. das Eingabefeld nimmt die ganze Breite ein.
# Neue Property 'priority' mit ganzer Breite
BusinessAttribute:
customProperties:
priority:
label: Prioriät
width: 2
Tooltipp

Falls der Schlüssel baseType den Wert TEXT hat, wird der Schlüssel width automatisch auf 2 gesetzt.

defaultValue

Der Schlüssel defaultValue definiert einen Default-Wert für eine Property. Das entsprechende Eingabefeld in der Benutzeroberfläche wird mit dem Default-Wert automatisch befüllt, falls kein Wert eingegeben wird.

# Neue Property 'dataCategory' mit Default-Wert
BusinessObject:
customProperties:
dataCategory:
label: Datenkategorie
defaultValue: master
literals:
transactional:
label: Transaktionsdaten
master:
label: Stammdaten
Tooltipp

Der Wert des Schlüssels defaultValue muss ein gültiger Wert sein. Falls der Schlüssel literals gesetzt ist, muss der Wert von defaultValue der gültige technische Name eines Wertes aus der Liste sein. Falls der Schlüssel baseType gesetzt ist, kann der Wert von defaultValue eine Zeichenkette sein.

readOnly

Der Schlüssel readOnly [true, false; default: false] definiert den Schreibschutz einer kundenspezifischen Property. Das entsprechende Eingabefeld wird in der Benutzeroberfläche zwar angezeigt aber es kann nur von einem Benutzer mit der Zugriffsstufe Administrator bearbeitet werden.

# Neue schreibgeschützte Property 'priority'
BusinessAttribute:
customProperties:
priority:
label: Prioriät
readOnly: true
Tooltipp

Der Schlüssel readOnly darf nur für neue, kundenspezifische Properties jedoch nicht für bestehende Properties definiert werden.

hidden

Der Schlüssel hidden [true, false; default: false] definiert die Sichtbarkeit einer kundenspezifischen Property. Das entsprechende Eingabefeld wird in der Benutzeroberfläche nicht angezeigt. Die kundenspezifische Property wird allerdings in den Schnittstellen (Metadata REST/API, Metadata Upload/Download) berücksichtigt.

# Neue versteckte Property 'priority'
BusinessAttribute:
customProperties:
priority:
label: Prioriät
hidden: true
Tooltipp

Versteckte kundenspezifische Properties enthalten Daten (z.B. interne, technische oder vertrauliche Informationen), die zwar nicht in der Benutzeroberfläche angezeigt werden sollen, jedoch gespeichert und mittels Schnittstellen importiert und exportiert werden können.

Tooltipp

Der Schlüssel hidden darf nur für neue, kundenspezifische Properties jedoch nicht für bestehende Properties definiert werden.

mandatory

Der Schlüssel mandatory [true, false; default: false] definiert, ob eine kundenspezifische Property verpflichtend ist. Das entsprechende Eingabefeld wird in der Benutzeroberfläche als Pflichtfeld angezeigt, d.h. das Element darf nicht gespeichert werden, solange es leere Pflichtfelder gibt.

# Neue verpflichtende Property 'priority'
BusinessAttribute:
customProperties:
priority:
label: Prioriät
mandatory: true
Tooltipp

In der Benutzeroberfläche werden kundenspezifische Pflichtfelder automatisch auch bei der schnellen Anlage (quick add) und Bearbeitung (quick edit) angezeigt.

Tooltipp

Der Schlüssel mandatory darf nur für neue, kundenspezifische Properties jedoch nicht für bestehende Properties definiert werden. Falls der Schlüssel baseType den Wert BOOLEAN hat, darf der Schlüssel mandatory nicht den Wert true haben.

group

Der Schlüssel group definiert die Gruppe einer kundenspezifischen Property. In der Benutzeroberfläche werden die entsprechenden Eingabefelder anhand dieser Gruppen angeordnet.

Die möglichen Gruppen werden zunächst mit dem Schlüssel groups beim Elementtyp definiert. Anschließend können kundenspezifische Properties angelegt werden, die mit dem Schlüssel group auf die zuvor definierten Gruppen verweisen.

# Neue Gruppen 'info' und 'additionalData' mit Properties 'priority', 'caption' und 'confidentiality'
BusinessAttribute:
groups:
info:
label: Information
icon: circle-exclamation
order: 10
additionalData:
label: Zusätzliche Daten
icon: unicorn
order: 20
customProperties:
priority:
label: Prioriät
group: info
caption:
label: Beschriftung
group: info
confidentiality:
label: Vertraulichkeit
group: additionalData
Tooltipp

Bei der Definition der Gruppen können die Schlüssel label, icon und order verwendet werden, um die Gruppen entsprechend zu beschriften bzw. anzuordnen.

Die definierten Gruppen werden in der Benutzeroberfläche unter Berücksichtigung der Beschriftungen, Symbole und Reihenfolge dargestellt.

group

Tooltipp

Der Schlüssel group darf nur für neue, kundenspezifische Properties jedoch nicht für bestehende Properties definiert werden.

Tooltipp

Bestimmte Elemente (z.B. Attribute oder Kennzahlen) haben einen Reiter "Berechnung" im Objektfenster des Elements. Die vordefinierte Gruppe computation kann verwendet werden, um kundenspezifische Properties in diesem Reiter anzuzeigen:

# Property 'confidentiality' im Reiter "Berechnung" anzeigen
BusinessAttribute:
customProperties:
confidentiality:
label: Vertraulich
baseType: BOOLEAN
group: computation

stereotype

Der Schlüssel stereotype definiert die Stereotypen eines Elementtyps. Stereotypen ermöglichen es, Elementtypen nochmals gezielt zu klassifizieren.

In der Benutzeroberfläche werden beim Anlegen oder Bearbeiten eines Elements die definierten Stereotypen automatisch als Dropdown-Liste angezeigt. Der Schlüssel label definiert die Beschriftung der Dropdown-Liste. Der Schlüssel literals definiert alle Stereotypen, d.h. alle Einträge der Dropdown-Liste. Wenn ein Stereotyp aus der Liste ausgewählt wird, dann kommt dieser Stereotyp zur Anwendung.

Für jeden Stereotyp können mit den Schlüsseln label, title und icon getrennte Bezeichnungen, Beschreibungen und Symbole definiert werden. Darüber hinaus können für jeden Stereotyp mit den Schlüsseln properties bzw. customProperties bestehende Properties angepasst bzw. neue, kundenspezifische Properties definiert werden. Die Bezeichnung bzw. das Symbol des Stereotypen sowie die angepassten bzw. neuen Properties werden auf Elemente des Elementtyps nur angewendet, falls der jeweilige Stereotyp ausgewählt ist.

Somit gibt es zwei Möglichkeiten, um Elementtypen zu konfigurieren:

  • Wenn die Anpassungen (label, title, icon, properties, customProperties, usw.) direkt am Elementtyp definiert sind, dann werden sie auf alle Elemente des Elementtyps angewendet.
  • Wenn die Anpassungen (label, title, icon, properties, customProperties, usw.) pro Stereotyp getrennt definiert sind, dann werden sie auf alle Elemente des Elementtyps angewendet, bei denen der jeweilige Stereotyp ausgewählt ist.
# Stereotypen 'schema' und 'program' für Sammlungen
Collection:
properties:
stereotype:
label: Sammlungstyp
literals:
schema:
label: Datenbank Schema
ling: s1p5n
icon: folder-tree
program:
label: Programm
ling: s1p1n
icon: solid-screen-users
customProperties:
sponsor:
label: Auftraggeber
baseType: STRING
Erklärung

Im Beispiel werden zwei Stereotypen definiert. In der Benutzeroberfläche erscheint beim Anlegen bzw. Bearbeiten einer Sammlung die Dropdown-Liste Sammlungstyp mit den Einträgen Datenbank Schema und Programm. Falls der Stereotyp schema ausgewählt wird, dann wird die Sammlung als Datenbank Schema mit dem Symbol folder-tree dargestellt. Falls der Stereotyp program ausgewählt wird, dann wird die Sammlung als Programm mit dem Symbol solid-screen-users dargestellt und zusätzlich um die neue, kundenspezifische Property Auftraggeber erweitert.

Stereotypen können verwendet werden, um individuelle Mandantentypen und Symbole zu konfigurieren:

# Stereotypen 'base' und 'sub' für den Mandanten
Tenant:
properties:
stereotype:
label: Mandantentyp
labelEn: Tenant type
literals:
base:
label: Basismandant
labelEn: Base tenant
icon: solid-circle-b
sub:
label: Submandant
labelEn: Sub tenant
icon: circle-s
Erklärung

Im Beispiel werden zwei Stereotypen definiert. In der Benutzeroberfläche erscheint beim Bearbeiten des Mandanten die Dropdown-Liste Mandantentyp mit den Einträgen Basismandant und Submandant. Falls der Stereotyp base ausgewählt wird, dann wird der Mandant als Basismandant mit dem Symbol solid-circle-b dargestellt. Falls der Stereotyp sub ausgewählt wird, dann wird der Mandant als Submandant mit dem Symbol circle-s dargestellt.

Achtung

Falls ein Stereotyp geändert oder gelöscht wird, kann das zu verloreren Metadaten in nicht mehr vorhandenen kundenspezifischen Properties führen. Vor der Änderung von stereotype sollte daher sichergestellt werden, dass die Werte aller nicht mehr vorhandenen Properties gelöscht sind. Die Regelverletzungen überprüfen automatisch, ob ein gelöschter Stereotyp noch irgendwo in Verwendung ist.

ling

Der Schlüssel ling definiert die Deklinationsklasse einer Bezeichnung. Die Deklinationsklasse legt die Bildung des Plurals und die Einordnung in grammatikalische Fälle fest.

Wenn die Bezeichnung (label) eines Elementtyps definiert wird, muss die Deklinationsklasse angegeben werden, um die korrekte Deklination der Bezeichnung in der Benutzeroberfläche und in Reports sicherzustellen.

Tooltipp

Die Deklinationsklasse ist nur für Bezeichnungen auf Deutsch relevant.

# Elementtyp 'BusinessAttribute' umbenennen und korrekte Deklinationsklasse auswählen
BusinessAttribute:
label: Eigenschaft
ling: s3p3f

Die Deklinationsklasse lässt sich wie folgt zusammensetzen. Aus jeder Spalte werden die passenden Werte ausgewählt und zusammengesetzt. Die Auswahloptionen in Spalte 1 und 2 beziehen sich jeweils auf die verwendete Endung in den vier Fällen (Nominativ, Genitiv, Dativ, Akkusativ).

Singular DeklinationPlural DeklinationUmlaut VerwendungGeschlecht
s1
-, -s, -, -
p1
-e, -e, .-en, -e
u
Verwendung von Umlauten
n
Neutrum
s2
-, -n, -n, -n
p2
-, -, -(n), -
-
Keine Verwendung von Umlauten
m
Maskulin
s3
-, -, -, -
p3
-n, -n, -n, -n
f
Feminin
p4
-er, -er, -ern, -er
p5
-s, -s, -s, -s

Zur Veranschaulichung dient folgende Tabelle mit Beispielen:

Deklinationsklassen

Hinweis

Der Schlüssel plural stellt eine vereinfachte Alternative zur Deklinationsklasse ling dar.

plural

Der Schlüssel plural definiert die Bezeichnung eines Elementtyps im Plural. Die Bezeichnung im Plural wird analog zur Bezeichnung (label) angezeigt, wenn die Mehrzahlform erforderlich ist.

Zusätzlich zur Standardsprache (Deutsch) ist es möglich, die Bezeichnung im Plural in anderen Sprachen anzugeben:

  • plural definiert die Bezeichnung im Plural auf Deutsch (Standardsprache)
  • pluralEn definiert die Bezeichnung im Plural auf Englisch
# Plural
BusinessAttribute:
label: Eigenschaft
labelEn: Property
plural: Eigenschaften
pluralEn: Properties
Hinweis

Der Schlüssel plural stellt eine vereinfachte Alternative zur Deklinationsklasse ling dar.