public override bool TryGetMember(GetMemberBinder binder, out object result)
 {
     var elements = xElement.Elements()
                             .Where(e => e.Name == XName.Get(binder.Name, xElement.Name.NamespaceName))
                             .Select(e => new DynamicElement(e));
     if (elements.Count() == 0)
     {
         var attributes = xElement.Attributes().Where(a=>a.Name == XName.Get(binder.Name))
                          .DefaultIfEmpty(null)
                          .SingleOrDefault();
         if (attributes == null)
         { 
             result = new DynamicConverter();
         }
         else
         {  
             result = new DynamicAttribute(attributes);
         }
     }
     else
     {
         result = new DynamicConverter(elements);
     }
     return true;
 }
 public override bool TryGetMember(GetMemberBinder binder, out object result)
 {
     result = new DynamicConverter();
     return true; 
 }