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/Binding.java
/**
	 * @return an observable value containing the current partial validation
	 *         error or null
	 */
	public abstract IObservableValue getPartialValidationError();
	/**
	 * @return an observable value containing the current validation error or
	 *         null
	 */
	public abstract IObservableValue getValidationError();
	/**
	 * Removes a listener from the set of listeners that will be notified when
	 * an event occurs in the data flow pipeline that is managed by this
	 * Binding.
	 * 
	 * @param listener
	 *            The listener to remove.
	 */
	public void removeBindingEventListener(IBindingListener listener) {
		synchronized (bindingEventListeners) {
			bindingEventListeners.remove(listener);
		}
	}
	/**
	 * Updates the model's state from the target's state at the next reasonable
	 * opportunity. There is no guarantee that the state will have been updated
	 * by the time this call returns.
	 */
	public abstract void updateModelFromTarget();
	/**