if (in instanceof SAXSource) { return ((SAXSource) in).inputSource; }
	public static InputSource sourceToInputSource (Source in)	{	    InputSource	retval;	    boolean	ok = false;	    if (in.getSystemId () != null) {		retval = new InputSource (in.getSystemId ());		ok = true;	    } else		retval = new InputSource ();	    	    if (in instanceof StreamSource) {		StreamSource	ss = (StreamSource) in;		if (ss.getReader () != null) {		    retval.setCharacterStream (ss.getReader ());		    ok = true;		} else if (ss.getInputStream () != null) {		    retval.setByteStream (ss.getInputStream ());		    ok = true;		}		if (ss.getPublicId () != null)		    retval.setPublicId (ss.getPublicId ());	    }	    return ok ? retval : null;	}