public override void AddElementLog(ElementLog log) { if (Enclosing is NameSpace) { base.AddElementLog(log); } else { IEnclosed current = Enclosing as IEnclosed; while (current != null) { ModelElement element = current as ModelElement; if (element != null) { element.AddElementLog(log); current = null; } else { current = current.Enclosing as IEnclosed; } } } }