Strukturierte Werte

Soll ein Konfigurationswert nicht in einer unstrukturierten textuellen Repräsentation gespeichert werden, sondern in ein strukturiertes XML-Fragment, muss ein sog. Binding (genauer, eine Implementierung von ConfigurationValueBinding) annotiert werden. Mit einem solchem Binding ist es möglich beliebige Teilstrukturen in einen anwendungsdefinierten Konfigurationswerttyp zu übersetzten. Das Binding definiert die Attribute und den Inhalt des inneren XML-Elements, das den strukturierten Konfigurationswert repräsentiert. Der (lokale) Name dieses Elements entspricht dem Konfigurationsnamen der Eigenschaft, welche den strukturierten Wert enthält.

Für Listen bzw. Maps sind solche Bindings bereits als separate Annotationen @ListBinding bzw. @MapBinding vorhanden.

Die allgemeinere Annotation @Binding sollte nur äußerst sparsam eingesetzt werden, da innerhalb eines solchen strukturierten Konfigurationswert keine Tool-Unterstütztung für Autovervollständigung möglich ist (das Schema ist wie bei untypisierter Konfiguration nur durch die Parser-Implementierung definiert).