private string GetAttribute (XmlAttributeCollection attrs, string attr, bool required, XmlNode node)
{
XmlAttribute a = attrs[attr];
string r = null;
if (a != null) {
r = a.Value;
if (required)
ValidateAttribute (attr, r, node);
attrs.Remove (a);
}
else if (required)
ThrowMissingAttribute (attr, node);
return r;
}