There are a number of functions in Murano Conductor that can be used in XML DSL:
<true/>- returns True<false/>- False<null/>- None<text><foo/></text>- converts body to string(str(foo()))list - form list (array) object -
<list> <item>item1</item> <item>item2</item> <item><true/></item> </list>equals to
["item1", "item2", True]map - form dictionary (map) object
<map> <item name="key1">value1</item> <item name="key2">value2</item> </map>equals to
{ "key1": "value1", "key2": "value2" }For both list and map functions names of item nodes ("item" in examples above) is irrelevant and can be changed to better match structure usage. For example<map> <set name="key"><null/></set> </map>
Structures can be nested:
<list>
<item>
<map>
<item name="name 1">value 1</item>
<item name="name 2">value 2</item>
</map>
</item>
<item>
<map>
<item name="name 1">value 3</item>
<item name="name 2">value 4</item>
</map>
</item>
</list>
equals to
[
{ 'name 1': 'value 1', 'name 2': 'value 2' },
{ 'name 1': 'value 3', 'name 2': 'value 4' }
]


