ELEMENT array (description?, grant*, constraint*) ATTRIBUTE name string notnull bool unique bool readonly bool title string
Attribut | Typ | Pflicht | Default | Beschreibung |
---|---|---|---|---|
name | string | yes | n/a | Ein eindeutiger Name welcher diese Spalte identifiziert. Sollte kleingeschrieben und ein valider XML-, SQL-Bezeichner sein. |
notnull | bool | - | no | Eine Spalte, die mit not-null definiert ist, darf keine undefinierten (NULL-)Werte enthalten. |
unique | bool | - | no | Ein Unique-Constraint bedeutet , dass die Spalte keinen Wert mehrfach enthalten darf. Beachten Sie, dass ein Unique-Constraint technisch einen Unique-Index auf dieser Spalte impliziert und umgekehrt. |
readonly | bool | - | no | Sie können die Spalte auf schreibgeschützt setzen, um zu verhindern dass Änderungen vorgenommen werden. Hinweis: Zeilen können weiterhin hinzugefügt oder gelöscht werden, jedoch darf die Spalte nicht aktualisiert werden. |
title | string | - | no | Ein Text welcher in der Nutzeroberfläche zur Beschriftung des mit der Spalte verbundenen Steuerelementes verwendet werden kann. Beachten sie, dass der Text ein Platzhalter sein darf, welcher für die angezeigte Sprache übersetzt wird. |
Eine Spalte vom Typ Array ist (möglicherweise mehrdimensionales) Array von Zeichenfolgen.
Für die meisten DBMS muss dieses Feature simuliert werden. Dies kann implementiert werden, indem die Werte als serialisierte Zeichenfolge gespeichert werden. Diese Zeichenfolge sollte, wenn sie geladen wird, deserialisiert, und als Array zurückgegeben werden. Für diesen Fall wird empfohlen, die Zeichenfolge in JSON zu kodieren.
Arrays werden beim Editieren als Paare von Schlüsseln und Werten dargestellt. Es wird zusätzlich ein Steuerelement zum Entfernen und Hinzufügen von Einträgen angezeigt.
Ist das Element nicht editierbar, so werden seine Elemente als mehrdimensionale Listen aufgezählt. Schlüssel und Werte werden optisch voneinander getrennt dargestellt. Die Darstellung kann als aufklappbares Baummenü erfolgen.
Thomas Meyer, www.yanaframework.net