Here’s an example of a two-element <struct>:
<struct> <member> <name>name</name> <value><string>John</string></value> </member> <member> <name>age</name> <value><i4>19</i4></value> </member> </struct>
<struct>s can be recursive, any <value> may contain a <struct> or any other type, including an <array>, described below.
<array>s
A value can also be of type <array>.
An <array> contains a single <data> element, which can contain any number of <value>s.
Here’s an example of a three-element array:
<array> <data> <value><boolean>0</boolean></value> <value><i4>9</i4></value> <value><string>Hello</string></value> </data> </array>
<array> elements do not have names.
You can mix types as the example above illustrates.