Bug 118429 [DataBinding] Validation should use IStatus, not just Strings
In order to use data binding in Workbench or IDE dialogs and preference pages, we need validation in terms of IStatus objects. Using strings is too simplistic. For example, look at the wizard for creating a new class. You will get a warning if the class name does not start with an uppercase letter, or if you don't provide a package name, but you will still be able to click "Finish" to proceed anyway. (Note that IStatus is currently not on the classpath, we need to re-introduce the dependency on org.eclipse.equinox.common, which contains IStatus etc.)
bundles/org.eclipse.core.databinding/src/org/eclipse/core/databinding/DataBindingContext.java
* Constant specifiying that validation or update events from UI observables
	 * should be triggered early, typically on each keystroke.
	 */
	public static final int TIME_EARLY = 0;
	/**
	 * Constant specifiying that validation or update events from UI observables
	 * should be triggered late, typically on focus lost.
	 */
	public static final int TIME_LATE = 1;
	private List bindingEventListeners = new ArrayList();
	private WritableList bindings;
    
    /**
     * Unmodifiable version of {@link #bindings} for exposure publicly.
     */
    private IObservableList unmodifiableBindings;
	private List bindSupportFactories;
	protected DataBindingContext parent;
	private ComputedValue partialValidationError;
	private ObservableList partialValidationErrors;
	private ComputedValue validationError;
	private ObservableList validationErrors;
	private List childContexts = new ArrayList();
	private Realm validationRealm;
	/**
	 * Creates a data binding context, using the current default realm for the
	 * validation observables, and set up with a
	 * {@link DefaultBindSupportFactory}, supplying converters and validators
	 * for common data types.
	 */