public Document buildDocument() {
   HashMap<String, String> data = _prop.getData();
   if (data != null) {
     Document doc = new Document();
     Set<String> keySet = data.keySet();
     Iterator<String> keyIter = keySet.iterator();
     StringBuffer contentBuffer = new StringBuffer();
     while (keyIter.hasNext()) {
       String propName = keyIter.next();
       String propVal = data.get(propName);
       contentBuffer.append(propVal).append(" ");
       String[] valList = propVal.split(",");
       for (String val : valList) {
         Field f = new Field(propName, val, Store.NO, Index.NOT_ANALYZED_NO_NORMS);
         f.setOmitTermFreqAndPositions(true);
         doc.add(f);
       }
       doc.add(
           new Field(CONTENTS_FIELD_NAME, contentBuffer.toString(), Store.NO, Index.ANALYZED));
     }
     return doc;
   } else {
     return null;
   }
 }
 public boolean isSkip() {
   return _prop.isSkip();
 }
 public boolean isDeleted() {
   return _prop.getData() == null;
 }
 public long getUID() {
   return _prop.getID();
 }