private static bool IsSpecificationContainer(IClass potentialSpecificationContainer)
        {
            if (potentialSpecificationContainer == null)
                return false;

            if (potentialSpecificationContainer.GetAccessRights() != AccessRights.PUBLIC)
                return false;

            var fields = potentialSpecificationContainer.GetMembers().OfType<IField>();

            return fields.Any(f => typeof(Specification).IsAssignableFrom(f.Type as IDeclaredType));
        }