Schlüssel/Wert-Paar: Unterschied zwischen den Versionen
Kowa (Diskussion | Beiträge) |
Kowa (Diskussion | Beiträge) |
||
Zeile 18: | Zeile 18: | ||
! | '''Wert''' | ! | '''Wert''' | ||
! | '''Datentyp''' | ! | '''Datentyp''' | ||
! | '''Beispiel''' | |||
|- | |- | ||
| | Attribut | | | Attribut | ||
Zeile 23: | Zeile 24: | ||
| | Attributwert | | | Attributwert | ||
| | [[Domäne]] | | | [[Domäne]] | ||
| | Attribut <code>a</code>:<br/><code>let t = {a: 1}; t.a === 1</code> | |||
|- | |||
| | property | |||
| | property name | |||
| | property value | |||
| | property type | |||
| | property <code>a</code>:<br/><code>let t = {a: 1}; t.a === 1</code> | |||
|- | |- | ||
| | Variable | | | Variable | ||
Zeile 28: | Zeile 37: | ||
| | Variablenwert | | | Variablenwert | ||
| | Typ | | | Typ | ||
| | Variable <code>a</code>:<br/> <code>let a = 5</code> | |||
|- | |- | ||
| | Parameter | | | Parameter | ||
Zeile 33: | Zeile 44: | ||
| | Argument | | | Argument | ||
| | Typ | | | Typ | ||
| | property <code>a</code><br/><code>let t = {a: 1}; t.a === 1</code> | |||
|- | |- | ||
| | [[Hasharry|Hashentry]] | | | [[Hasharry|Hashentry]] |
Version vom 5. August 2019, 08:25 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])
Zur Benennung von Werten verwendet man geordnete Schlüssel-/Wert-Paare $ (\rm{key}, \rm{value}) $ oder auch key: value
. 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 ganz verschiedenen Bezeichungen vor:
Name | Schlüssel | Wert | Datentyp | Beispiel |
---|---|---|---|---|
Attribut | Attributname Attributbezeichner |
Attributwert | Domäne | Attribut a :let t = {a: 1}; t.a === 1
|
property | property name | property value | property type | property a :let t = {a: 1}; t.a === 1
|
Variable | Variablenname | Variablenwert | Typ | Variable a :let a = 5
|
Parameter | Parameter | Argument | Typ | property a let t = {a: 1}; t.a === 1
|
Hashentry | Hashkey | Hashvalue | Hashtype |
Ein Attribut kann auch mehr als einen Attributbezeichner 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:
(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
- ↑ Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung)
- ↑ Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung)