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' }
    ]


