Bug 221337 [Markers] MarkerItem has too much API
We are exposing too much as API in MarkerItem. We should only provide getAtttributeValue and the methods that support PATH_ATTRIBUTE and NAME_ATTRIBUTE as they are tricky. Everything else needs to be pushed down to an internal class. We should mention the relevant IMarker constants for those removed.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/MarkerProblemSeverityAndMessageField.java
MarkerDescriptionField {
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.ui.provisional.views.markers.IMarkerField#compare(org.eclipse.ui.provisional.views.markers.MarkerItem,
	 *      org.eclipse.ui.provisional.views.markers.MarkerItem)
	 */
	public int compare(MarkerItem item1, MarkerItem item2) {
		int severity1 = getSeverity(item1);
		int severity2 = getSeverity(item2);
		if (severity1 == severity2)
			return super.compare(item1, item2);
		return severity2 - severity1;
	}
	/**
	 * Return the image for the receiver.
	 * @param item
	 * @return Image or <code>null</code>
	 */
	private Image getImage(MarkerItem item) {
		int severity = -1;
		if (item.isConcrete())
			severity = getSeverity(item);