bool ProcessElementAttribute (PropertyInfo propertyInfo, XmlElementAttribute attribute) { if (attribute != null) { var name = string.IsNullOrEmpty (attribute.Name) ? propertyInfo.Name : attribute.Name; var id = PropertyName.CreateForElement (name, attribute.Prefix); var property = new ValuePropertyVisitor (attribute.OmitIfNull, propertyInfo); ProcessNestedAttributes (id, property); properties[id] = property; return true; } else { return false; } }