Element <property>¶
Zweck: Überschreibt eine Property im Scope eines eingebundenen XML-Descriptors.
Warum: Verwende dieses Element, um einen lokalen Literalwert oder ausgewerteten Override an einen eingebundenen Descriptor zu übergeben.
Beispiel¶
1 | |
Entscheidungshilfe¶
Fachlicher Nutzen: Konfiguriert ein Include, ohne das eingebundene Fragment zu verändern oder zu duplizieren.
-
Verwenden, wenn
- Beim Übergeben eines literalen oder berechneten Werts an ein XML-Fragment.
-
Anderen Ansatz wählen, wenn
- Beim Deklarieren der Fragment-Schnittstelle oder Ändern globaler Laufzeitkonfiguration.
-
Voraussetzungen
- Platziere property in include und verwende einen vom Fragment erwarteten param-Namen.
-
Alternativen
- Verwende param im Fragment, um den akzeptierten Eingang zu deklarieren. (Siehe:
<param>)
- Verwende param im Fragment, um den akzeptierten Eingang zu deklarieren. (Siehe:
Vollständige Beispiele¶
Ein typisiertes Descriptor-Fragment mit lokalen Parametern aufrufen
Verwende einen param-Vertrag und include-lokale Properties, wenn mehrere fachliche Produkte dieselbe Modellform mit unterschiedlichen begrenzten Werten nutzen.
| parameterized-fragment/fragments/payment.xml | |
|---|---|
1 2 3 4 5 6 7 8 9 | |
| parameterized-fragment/datamimic.xml | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 | |
Regeln und ungültige Kombinationen¶
Eine property erfordert constant oder script.
Attribute: constant, script
Warum: Das Include muss entweder einen Literalwert oder einen im Aufruferkontext auszuwertenden Ausdruck erhalten.
| Gültige Kombination | |
|---|---|
1 | |
| Ungültige Kombination | |
|---|---|
1 | |
Wähle constant oder script, niemals beides.
Attribute: constant, script
Warum: Literale und ausgewertete Werte haben unterschiedliche Validierungszeitpunkte und können nicht gemeinsam eine property besitzen.
| Gültige Kombination | |
|---|---|
1 | |
| Ungültige Kombination | |
|---|---|
1 | |
constant lehnt Ausdrucksklammern ab.
Attribute: constant, script
Warum: Verwende script für die Auswertung im Aufruferkontext; constant bleibt bewusst ein Parse-Zeit-Literal.
| Gültige Kombination | |
|---|---|
1 | |
| Ungültige Kombination | |
|---|---|
1 | |
Erlaubte Elternelemente / Erlaubte Kindelemente¶
Erlaubte Elternelemente: else, else-if, if, include, while
Erlaubte Kindelemente:
Keine
Zugehörige Konzepte und Anwendungsfälle¶
- Dynamische Includes und Fragmentparameter — Explains URI interpolation, scoped include properties, typed fragment params, runtime caller context, nesting, conditions, and cataloged failures for reusable XML composition.
Attribute¶
Alle 3 Attribute anzeigen
constant
Literal value injected into the child include scope. {expr} is forbidden.
optional; string; Standardwert: null.
name
Property key injected into the included descriptor scope.
erforderlich; string.
script
Expression evaluated in the direct caller context when the include executes.
optional; string; Standardwert: null.