code: @Override
  	public boolean okToTraverse(Level3Element ele)
  	{
  		if(validValues.isEmpty())
  			return true;
  		
  		boolean empty = true;
  		boolean objectRelevant = false;
  
  		for (PathAccessor acc : accessors.keySet())
  		{
  			Class clazz = accessors.get(acc);
  
  			if (!clazz.isAssignableFrom(ele.getClass())) continue;
  
  			objectRelevant = true;
  
  			Set values = acc.getValueFromBean(ele);
  			if (empty) empty = values.isEmpty();
  
  			for (Object o : values)
  				//ignoring capitalization (case)
  				if (validValues.contains(o.toString().toLowerCase())) 
  					return true;
  		}
  
  		return !objectRelevant || (empty && isEmptyOK());
  	}
docs: Checks if the related values of the object are among valid values. Returns true if none of
  the accessors is applicable to the given object.
  @param ele level 3 element to check
  @return true if ok to traverse