nsCOMPtr<nsIRDFNode> node; ParseText(getter_AddRefs(node));
nsAutoString value; value.Append(mText, mTextLength); value.Trim(" \t\n\r");
RDFContentSinkImpl::FlushText(PRBool aCreateTextNode, PRBool* aDidFlush){    nsresult rv = NS_OK;    PRBool didFlush = PR_FALSE;    if (0 != mTextLength) {        if (aCreateTextNode && rdf_IsDataInBuffer(mText, mTextLength)) {            // XXX if there's anything but whitespace, then we'll            // create a text node.            switch (mState) {            case eRDFContentSinkState_InMemberElement: {                nsCOMPtr<nsIRDFNode> node;                ParseText(getter_AddRefs(node));                nsCOMPtr<nsIRDFContainer> container;                NS_NewRDFContainer(getter_AddRefs(container));                container->Init(mDataSource, GetContextElement(1));                container->AppendElement(node);            } break;            case eRDFContentSinkState_InPropertyElement: {                nsCOMPtr<nsIRDFNode> node;                ParseText(getter_AddRefs(node));                mDataSource->Assert(GetContextElement(1), GetContextElement(0), node, PR_TRUE);            } break;            default:                // just ignore it                break;            }        }        mTextLength = 0;        didFlush = PR_TRUE;    }    if (nsnull != aDidFlush) {        *aDidFlush = didFlush;    }    return rv;}