public Object X(ExpressionObject<?> object) throws ScopeException {
  if (object instanceof Dimension) {
    return A((Dimension)object);
  }
 else   if (object instanceof Metric) {
    return M((Metric)object);
  }
 else {
    throw new ScopeException("invalid object");
  }
}

public Object X ( ExpressionObject < ? > object ) throws ScopeException { if ( object instanceof Dimension ) { return A ( ( Dimension ) object ) ; } else if ( object instanceof Metric ) { return M ( ( Metric ) object ) ; } else { throw new ScopeException ( "invalid object" ) ; } }
generic method that can create both axis or measure depending on the argument type ( dimension or metric )
