code: public boolean isValid() {
          // to be valid a scope must have a type set other than undefined and its name will be set
          return (type != null && !type.equals(ScopeType.UNDEFINED) && (name != null && !("").equals(name)));
      }
docs: Validates a scope based on its name and type
  
  @return true if both name and type are valid, false otherwise