code: @Override public Set<R> getValueFromBean(D bean) throws IllegalBioPAXArgumentException
  	{
  		Object value = null;
  		try
  		{
  			if (this.getDomain().isInstance(bean)) value = this.getMethod.invoke(bean);
  		}
  		catch (IllegalAccessException e)
  		{
  			throw new IllegalBioPAXArgumentException(
  					"Could not invoke get method " + getMethod.getName() + " for " + bean, e);
  		}
  		catch (IllegalArgumentException e)
  		{
  			throw new IllegalBioPAXArgumentException(
  					"Could not invoke get method " + getMethod.getName() + " for " + bean, e);
  		}
  
  		catch (InvocationTargetException e)
  		{
  			throw new IllegalBioPAXArgumentException(
  					"Could not invoke get method " + getMethod.getName() + " for " + bean, e);
  		}
  
  		if (value == null) return Collections.emptySet();
  		else if (this.isMultipleCardinality())
  		{
  			return (Collections.unmodifiableSet(((Set<R>) value)));
  		} else
  		{
  			return Collections.singleton(((R) value));
  		}
  	}
docs: Returns the value of the <em>bean</em> using the default {@link #getMethod}.
  If the value is unknown returns null or an empty set depending on the cardinality.
  @param bean the object whose property is requested
  @return an object as the value