if (NS_SUCCEEDED(rv = nsRDFContentUtils::FindTreeBodyElement(mRoot, &treeBody)))
if (NS_SUCCEEDED(rv = nsRDFContentUtils::FindChildByTag(mRoot, kNameSpaceID_XUL, kTreeBodyAtom, &treeBody)))
RDFTreeBuilderImpl::Notify(nsITimer *timer){	if (!mTimer)	return;	if (mRoot)	{		nsresult		rv;#ifdef	PR_LOGGING        if (PR_LOG_TEST(gLog, PR_LOG_DEBUG)) {            nsIDOMXULElement	*domElement;            if (NS_SUCCEEDED(rv = mRoot->QueryInterface(kIDomXulElementIID, (void **)&domElement)))                {                    nsIRDFResource		*res;                    if (NS_SUCCEEDED(rv = domElement->GetResource(&res)))                        {                            nsXPIDLCString	uri;                            res->GetValue( getter_Copies(uri) );                            const char	*url = uri;                            PR_LOG(gLog, PR_LOG_DEBUG,                                   ("Timer fired for '%s'\n", url));                            NS_RELEASE(res);                        }                    NS_RELEASE(domElement);                }        }#endif		nsIContent	*treeBody;		if (NS_SUCCEEDED(rv = nsRDFContentUtils::FindTreeBodyElement(mRoot, &treeBody)))		{			UpdateContainer(treeBody);			NS_RELEASE(treeBody);		}	}	mTimer->Cancel();	NS_RELEASE(mTimer);	mTimer = nsnull;	// reschedule timer (if document still around)	if (mDocument)	{		NS_VERIFY(NS_SUCCEEDED(NS_NewTimer(&mTimer)), "couldn't get timer");		if (mTimer)		{			mTimer->Init(this, /* PR_TRUE, */ BUILDER_NOTIFY_MINIMUM_TIMEOUT);		}	}}