Meskipun Transform
memungkinkan Anda mengubah tampilan elemen atau grup
elemen, mungkin ada kalanya Anda ingin beralih di antara daftar
perilaku berdasarkan beberapa kondisi. Hal ini analog dengan pernyataan switch
atau pernyataan if…else
dalam bahasa lain.
Misalnya, Anda mungkin ingin menampilkan latar belakang yang berbeda untuk pagi hari, pagi, makan siang, sore, malam, dan malam hari.
Pernyataan Condition
dalam Format Tampilan Jam memungkinkan Anda menyertakan berbagai bagian
adegan tampilan jam, bergantung pada evaluasi ekspresi, misalnya:
<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>
...
</Expressions>
<Compare expression="is_early_morning">
<!-- Early morning content here -->
<Group ... />
</Compare>
<Compare expression="is_morning">
<!-- Morning content here -->
<Group ... />
</Compare>
...
<!-- The "else" case -->
<Default>
<!-- content -->
</Default>
</Condition>
Beberapa hal yang perlu diperhatikan tentang kondisi:
- Elemen
Compare
pertama denganexpression
true
digunakan, dan elemen lainnya diabaikan. - Karena format XML, sering kali lebih mudah untuk menggabungkan definisi
ekspresi dalam elemen
CDATA
seperti yang ditunjukkan di sini, karena hal ini menghindari perlunya XML escape menggunakan elemen entitas seperti>
dan&
. - Struktur
Condition
dapat disusun bertingkat.