Schlüssel/Wert-Paar: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
K (Kowa verschob die Seite Attribut (Datenmanagement) nach Schlüssel/Wert-Paar)
Zeile 8: Zeile 8:


==Definition (Kowarschick<ref>{{Quelle|Kowarschick (MMDB)}}</ref>)==
==Definition (Kowarschick<ref>{{Quelle|Kowarschick (MMDB)}}</ref>)==
Attribute sind [[geordnetes Paar|geordnete Schlüssel-/Wert-Paare]] <math>(\rm{key}, \rm{value})</math> oder auch <code>key: value</code>. Der '''Schlüssel''' wird auch '''Attributbezeichner''' genannt. Und an Stelle von '''Wert''' sagt man häufig auch '''Attributwert'''.
[[geordnetes Paar|geordnete Schlüssel-/Wert-Paare]] <math>(\rm{key}, \rm{value})</math> oder auch <code>key: value</code> dienen dazu, [[Wert]]e zu benennen. Der ''Schlüssel'' (englisch: ''key'') dient dabei als ''Name'' des zugehörigen ''Wert''es (englisch: ''value'').
Dem Schlüssel kann ein [[Datentyp]] zugeordnet werden, der die möglichen Werte, die unter diesem Namen „gespeichert“ werden können, beschränkt.


Die erlaubten Attributwerte können mit Hilfe von so genannten {{Domäne}}n, {{dh}} mit Hilfe von nicht-leeren {{Menge}}n oder {{Klasse}}n beschränkt werden.
Schlüssel/wert-Paare kommen in der MAthematik und der Informatik unter verschiedenen Bezeichungen vor:
{| class = "wikitable" style = "table-layout: fixed; max-width: 48em; border: 0;"
|-
! | '''Name'''
! | '''Schlüssel'''
! | '''Wert'''
! | '''Datentyp'''
|-
| | Attribut
| | Attributname
| | Attributwert
| | [[Domäne]]
|-
| | Variable
| | Variablenname
| | Variablenwert
| | Typ
|-
| | [[Hasharry|Hashentry]]
| | Hashkey
| | Hashvalue
| | Hashtype
|}


Ein Attribut kann auch mehr als einen Attributebezeichner haben. In diesem Fall verwendet man Tripel, Quadrupel etc. zur Beschreibung von Attributen (siehe nachfolgende Definition).
Ein Attribut kann auch mehr als einen Attributebezeichner haben. In diesem Fall verwendet man Tripel, Quadrupel etc. zur Beschreibung von Attributen (siehe nachfolgende Definition).

Version vom 5. August 2019, 08:05 Uhr

Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen nur teilweise:

Korrektheit: 2
(teilweise überprüft)
Umfang: 2
(wichtige Fakten fehlen)
Quellenangaben: 1
(fehlen großteils)
Quellenarten: 3
(gut)
Konformität: 5
(ausgezeichnet)

Definition (Kowarschick[1])

geordnete Schlüssel-/Wert-Paare $ (\rm{key}, \rm{value}) $ oder auch key: value dienen dazu, Werte zu benennen. Der Schlüssel (englisch: key) dient dabei als Name des zugehörigen Wertes (englisch: value). Dem Schlüssel kann ein Datentyp zugeordnet werden, der die möglichen Werte, die unter diesem Namen „gespeichert“ werden können, beschränkt.

Schlüssel/wert-Paare kommen in der MAthematik und der Informatik unter verschiedenen Bezeichungen vor:

Name Schlüssel Wert Datentyp
Attribut Attributname Attributwert Domäne
Variable Variablenname Variablenwert Typ
Hashentry Hashkey Hashvalue Hashtype

Ein Attribut kann auch mehr als einen Attributebezeichner haben. In diesem Fall verwendet man Tripel, Quadrupel etc. zur Beschreibung von Attributen (siehe nachfolgende Definition).

Formale, verallgemeinerte Definition (Kowarschick[2])

Es seien $ a^1, \ldots, a^m $ paarweise verschiedene Werte ($ m \ge 1 $), $ D $ eine Domäne, d. h. eine nicht-leere Menge (oder Klasse), und $ v \in D $ ein Element von $ D $.

Dann heißt das $ m+1 $-Tupel $ (a^1, \ldots, a^m, D) $ Attributdefinition mit Attributnamen $ a^1, \ldots, a^m $ und Domäne $ D $. Das Tupel $ (a^1, \ldots, a^m, v) $ heißt Attribut (zur Domäne $ D $) mit Attributnamen $ a^1, \ldots, a^m $ und Attributwert $ v $.

Anmerkung
Zur Definition von allgemeinen Attributen wurde der Begriff Tupel als bekannt vorausgesetzt. Andererseits benötigt man zur Definition von allgemeinenTupel den zuvor definierten allgemeinen Attributbegriff. Es liegt hier jedoch kein Circulus vitiosus (Zirkelschluss) vor, da man Attribute auch allein mit Hilfe von geordneten Paaren definieren kann:

$ \begin{array}[t]{lcl} (a^1, \ldots, a^m, D) & := & (a^1, (a^2, \ldots (a^m, D)\ldots)) \\ (a^1, \ldots, a^m, v) & := & (a^1, (a^2, \ldots (a^m, v)\ldots)) \end{array} $

(Formal müsste diese Definition rekursiv über die Anzahl der Attributnamen erfolgen.)

Spezialfälle

Es seien $ i \in \mathbb N_0 $ eine natürliche Zahl und $ a $ eine Zeichenkette, die mit einem Buchstaben beginnt sowie evtl. endlich viele weitere Zeichen enthält (Buchstaben, Ziffern und einige ausgewählte Sonderzeichen wie +, -, _, @, $ etc.).

Dann heißen

  • $ (i, v) $ Positionsattribut
  • $ (a, v) $ benanntes Attribut
  • $ (a, i, v) $ benanntes Positionsattribut

Folgende alternative Schreibweisen können verwendet werden:

  • Positionsattribut: $ i: v $ (Formel) bzw. i: v (Pseudocode)
  • benanntes Attribut: $ a: v $ (Formel) bzw. a: v (Pseudocode)
  • benanntes Positionsattribut: $ a/i: v $ (Formel) bzw. a/i: v (Pseudocode)

Beispiele (Pseudocode)

Attributart Beispiel Domäne
Benanntes Attribut name: 'Anton' name: String
Positionsattribut 1: 'Anton' 1: String
Benanntes Positionsattribut 1/name: 'Anton' 1/name: String

Quellen

  1. Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung)
  2. Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung)