code: public void parse(
          InputStream is,
          DefaultHandler dh,
          String systemId)
          throws SAXException, IOException {
          if (is == null) {
              throw new IllegalArgumentException("InputStream cannot be null");
          }
  
          InputSource input = new InputSource(is);
          input.setSystemId(systemId);
          this.parse(input, dh);
      }
docs: Parse the content of the given {@link java.io.InputStream}
  instance as XML using the specified
  {@link org.xml.sax.helpers.DefaultHandler}.
  
  @param is InputStream containing the content to be parsed.
  @param dh The SAX DefaultHandler to use.
  @param systemId The systemId which is needed for resolving relative URIs.
  
  @throws IllegalArgumentException If the given InputStream is null.
  @throws IOException If any IO errors occur.
  @throws SAXException If any SAX errors occur during processing.
  
  @see org.xml.sax.DocumentHandler version of this method instead.