/**
   * This method could be over-ridden by a class that extends this class.
   *
   * @param handler non-null reference to current StylesheetHandler that is constructing the
   *     Templates.
   * @return an object that represents the stylesheet element.
   */
  protected Stylesheet getStylesheetRoot(StylesheetHandler handler)
      throws TransformerConfigurationException {
    StylesheetRoot stylesheet;
    stylesheet =
        new StylesheetRoot(
            handler.getSchema(), handler.getStylesheetProcessor().getErrorListener());
    if (handler.getStylesheetProcessor().isSecureProcessing()) stylesheet.setSecureProcessing(true);

    return stylesheet;
  }