Transform ti consente di modificare l'aspetto di elementi o gruppi di
elementi, ma in alcuni casi potresti voler passare da un elenco di
comportamenti in base a una determinata condizione. È analogo a un'istruzione switch
o if…else in altre lingue.
Ad esempio, potresti voler mostrare uno sfondo diverso per la mattina presto, la mattina, il pranzo, il pomeriggio, la sera e la notte.
Le istruzioni Condition nel formato del quadrante ti consentono di includere diverse parti
della scena del quadrante a seconda della valutazione delle espressioni, ad esempio:
<Condition> <Expressions> <Expression name="is_early_morning"> <![CDATA[[HOUR_0_23] >= 6 && [HOUR_0_23] < 8]] </Expression> <Expression name="is_morning"> <![CDATA[[HOUR_0_23] < 12]] </Expression> <!-- Further expressions --> </Expressions> <Compare expression="is_early_morning"> <!-- Early morning content here --> </Compare> <Compare expression="is_morning"> <!-- Morning content here --> </Compare> <!-- Further Compare elements --> <!-- The "else" case --> <Default> <!-- content --> </Default> </Condition>
Alcuni aspetti da considerare in merito alle condizioni:
- Viene utilizzato il primo elemento
Comparein cuiexpressionètruee gli altri vengono ignorati. - A causa del formato XML, spesso è più semplice racchiudere la definizione dell'espressione
in un elemento
CDATA, come mostrato qui, in quanto ciò evita la necessità di eseguire l'escape XML utilizzando elementi entità come>e&. - È possibile nidificare
Conditionstrutture.