code: public void parse(InputSource is, DefaultHandler dh)
          throws SAXException, IOException {
          if (is == null) {
              throw new IllegalArgumentException("InputSource cannot be null");
          }
  
          XMLReader reader = this.getXMLReader();
          if (dh != null) {
              reader.setContentHandler(dh);
              reader.setEntityResolver(dh);
              reader.setErrorHandler(dh);
              reader.setDTDHandler(dh);
          }
          reader.parse(is);
      }
docs: Parse the content given {@link org.xml.sax.InputSource}
  as XML using the specified
  {@link org.xml.sax.helpers.DefaultHandler}.
  
  @param is The InputSource containing the content to be parsed.
  @param dh The SAX DefaultHandler to use.
  
  @throws IllegalArgumentException If the <code>InputSource</code> object
  is <code>null</code>.
  @throws IOException If any IO errors occur.
  @throws SAXException If any SAX errors occur during processing.
  
  @see org.xml.sax.DocumentHandler