}
propertyElmts = new LinkedList<PropertyElmt>();
for (Node propertyNode : propertyNodes)
{
// Create a new PropertyElmt
PropertyElmt propertyElmt = new PropertyElmt();
// Set name
final String name = RUtil.getRequiredAttributeValue(propertyNode,
XML.ATTRIB.NAME);
propertyElmt.setName(name);
// Set value
final String value = RUtil.getAttributeValue(propertyNode,
XML.ATTRIB.VALUE);
propertyElmt.setValue(value);
// Set list items
final List<ListItemElmt> listItems = createListItemElmts(propertyNode);
propertyElmt.setListItems(listItems);
// Make sure there is either listItems or a value, but not both
RUtil.assertExclusiveOR((null == value), (null == listItems), "Either "
+ XML.ATTRIB.VALUE + " or " + XML.NODE.LIST
+ " are required, but not both");