void parseMixed() throws java.lang.Exception
    {
        char c;

        // Check for PCDATA alone.
        skipWhitespace();
        if (tryRead(')')) {
            dataBufferAppend(")*");
            tryRead('*');
            return;
        }

        // Parse mixed content.
        skipWhitespace();
        while (!tryRead(")*")) {
            require('|');
            dataBufferAppend('|');
            skipWhitespace();
            dataBufferAppend(readNmtoken(true));
            skipWhitespace();
        }
        dataBufferAppend(")*");
    }