String fs = node.getAttribute("foreground"); String bs = node.getAttribute("background");
const String fs = Model::getAttribute(node, "foreground"); const String bs = Model::getAttribute(node, "background");
  parseColor(const typename Model::Element& node, RGBColor& f, RGBColor& b)  {    String fs = node.getAttribute("foreground");    String bs = node.getAttribute("background");        if (fs.empty() || bs.empty())      {	String s_name = node.get_nodeName();	Globals::logger(LOG_WARNING, "malformed `%s' element in configuration file", s_name.c_str());	return false;      }    SmartPtr<Value> fv = ATTRIBUTE_SIGNATURE(MathML, Token, mathcolor).parseValue(fs);    SmartPtr<Value> bv = ATTRIBUTE_SIGNATURE(MathML, Token, mathbackground).parseValue(bs);    if (!fv || !bv)      {	String s_name = node.get_nodeName();	Globals::logger(LOG_WARNING, "malformed color attribute in configuration file, `%s' element", s_name.c_str());	return false;      }    f = ToRGB(fv);    b.transparent = ToTokenId(bv) == T_TRANSPARENT;    if (!b.transparent) b = ToRGB(bv);    return true;  }