private IEnumerable <CommenceViewMetaData> GetViewMetaData(IEnumerable <string> views)
 {
     foreach (string viewName in views)
     {
         // TODO this check masks a problem deeper down in the code in GetDDEValuesAsList(?)
         if (string.IsNullOrEmpty(viewName))
         {
             continue;
         }                                                 // edge-case: when a category does not have any views, we may get an empty string. This is just masking a problem deeper down.
         IViewDef             d = _db.GetViewDefinition(viewName);
         CommenceViewMetaData v = new CommenceViewMetaData(viewName, d);
         yield return(v);
     }
 }