code: public void compose(StylesheetRoot sroot) throws TransformerException
    {
      resolvePrefixTables();
      ElemTemplateElement t = getFirstChildElem();
      m_hasTextLitOnly = ((t != null) 
                && (t.getXSLToken() == Constants.ELEMNAME_TEXTLITERALRESULT) 
                && (t.getNextSiblingElem() == null));
                
      StylesheetRoot.ComposeState cstate = sroot.getComposeState();
      cstate.pushStackMark();
    }
docs: This function is called after everything else has been
  recomposed, and allows the template to set remaining
  values that may be based on some other property that
  depends on recomposition.