private XMLNoteImageIcon getIcon() throws SAXException {
			XMLNoteImageIcon.Provider prov=_doc.getXMLNoteImageIconProvider();
			
			XMLNoteImageIcon icn=null;
			String description="no description";
			XMLNoteImageIconSize size=new XMLNoteImageIconSize(-1,-1,XMLNoteImageIconSize.TYPE_PT);
			
			if (prov==null) {
				try {
					URL url=_icon.getUrl();
					if (url==null) {
						String id=_icon.getId();
						if (id!=null) {
							throw new SAXException("Image with id '"+id+"', but no XMLNoteImageIcon.Provider set on document");
						} else {
							throw new SAXException("Image with no URL, can't load that image");
						}
					} else {
						String d=_icon.getDescription();
						if (d==null) { d=description; }
						XMLNoteImageIconSize s=_icon.getSize();
						icn=new XMLNoteImageIcon(url,d,s);
					} 
				} catch (MalformedURLException e) {
					throw new SAXException(e);
				}
			} else {
				String id=_icon.getId();
				if (id!=null) {
					icn=prov.getIcon(id);
				} else {
					try {
						URL url=_icon.getUrl();
						String d=_icon.getDescription();
						if (d==null) { d=description; }
						XMLNoteImageIconSize s=_icon.getSize();
						if (url==null) {
							throw new SAXException("Image with no URL, can't load that image");
						}
						icn=prov.getIcon(url,d,s);
					} catch (MalformedURLException e) {
						throw new SAXException(e);
					}
				}
			}
			return icn;
		}