code: protected Object unmarshalSaxSource(SAXSource saxSource) throws XmlMappingException, IOException {
  		if (saxSource.getXMLReader() == null) {
  			try {
  				saxSource.setXMLReader(createXmlReader());
  			}
  			catch (SAXException ex) {
  				throw new UnmarshallingFailureException("Could not create XMLReader for SAXSource", ex);
  			}
  		}
  		if (saxSource.getInputSource() == null) {
  			saxSource.setInputSource(new InputSource());
  		}
  		return unmarshalSaxReader(saxSource.getXMLReader(), saxSource.getInputSource());
  	}
docs: Template method for handling {@code SAXSource}s.
  <p>This implementation delegates to {@code unmarshalSaxReader}.
  @param saxSource the {@code SAXSource}
  @return the object graph
  @throws XmlMappingException if the given source cannot be mapped to an object
  @throws IOException if an I/O Exception occurs
  @see #unmarshalSaxReader(org.xml.sax.XMLReader, org.xml.sax.InputSource)