@Override
    protected void appendBodyString(StringBuilder buffer) {
        appendIndexString(buffer);

        buffer.append("\"");
        for (Iterator<Item> i = getItemIterator(); i.hasNext();) {
            Item item = i.next();

            if (item instanceof WordItem) {
                WordItem wordItem = (WordItem) item;

                buffer.append(wordItem.getWord());
            } else if (item instanceof PhraseSegmentItem) {
                PhraseSegmentItem seg = (PhraseSegmentItem) item;

                seg.appendContentsString(buffer);
            } else {
                buffer.append(item.toString());
            }
            if (i.hasNext()) {
                buffer.append(" ");
            }
        }
        buffer.append("\"");
    }
Phrase items uses a empty heading instead of "PHRASE "
container-search/src/main/java/com/yahoo/prelude/query/PhraseItem.java