code: public void removeDocumentFromCache(int n)
    {
      if(DTM.NULL ==n)
        return;
      for(int i=m_sourceTree.size()-1;i>=0;--i)
      {
        SourceTree st=(SourceTree)m_sourceTree.elementAt(i);
        if(st!=null && st.m_root==n)
        {
  	m_sourceTree.removeElementAt(i);
  	return;
        }
      }
    }
docs: JJK: Support  <?xalan:doc_cache_off?> kluge in ElemForEach.
  TODO: This function is highly dangerous. Cache management must be improved.
  
  @param n The node to remove.