Since an attribute element can have one or more values within one declaration, you must be able to apply values in multiples. If the target to be modified is a table, the <attribute> element may be modified using a <struct> tag to modify multiple values. A struct is a collection of different datatypes. It allows you to apply a set of values to an element (such as string, integer, boolean). For example, to add two properties of different types (string and unsignedshort) to the AgentInfoSet attribute, use the following syntax:
<attribute name="AgentInfoSet" method="insert"> <struct> <string>public</string> <unsignedshort>162</unsignedshort> </struct> </attribute>
If an object contains an attribute called IntegerList, which contains a list of three integers, this attribute can be set in the following way:
<attribute name="IntegerList"> <struct> <int>4</int> <int>8</int> <int>9</int> </struct> </attribute>
If the attribute represents an IntegerList2, which has an unspecified number of integers, it can be imported in the following manner:
<attribute name="IntegerList2"> <struct><int>4</int></struct> <struct><int>8</int></struct> <struct><int>9</int></struct> </attribute>