else if (c.elem.hasAttribute(sig.name))
else if (Model::hasAttribute(c.elem, sig.name))
  get(const class AttributeSignature& sig) const  {    for (typename std::list<Context>::const_iterator p = context.begin(); p != context.end(); p++)      {	const Context& c = *p;		if (SmartPtr<Attribute> attr = c.attributes->get(ATTRIBUTE_ID_OF_SIGNATURE(sig)))	  return attr;	else if (c.elem.hasAttribute(sig.name))	  {	    SmartPtr<Attribute> attr = Attribute::create(sig, c.elem.getAttribute(sig.name));	    c.attributes->set(attr);	    return attr;	  }      }        return 0;  }