@Override
 protected String doBuildRelationString(String dm) {
   StringBuilder sb = new StringBuilder();
   if (_member != null && _member.isPresent()) {
     sb.append(dm).append("member");
   }
   if (_product != null && _product.isPresent()) {
     sb.append(dm).append("product");
   }
   if (_purchasePaymentList != null && !_purchasePaymentList.isEmpty()) {
     sb.append(dm).append("purchasePaymentList");
   }
   if (sb.length() > dm.length()) {
     sb.delete(0, dm.length()).insert(0, "(").append(")");
   }
   return sb.toString();
 }
 @Override
 protected String doBuildStringWithRelation(String li) {
   StringBuilder sb = new StringBuilder();
   if (_member != null && _member.isPresent()) {
     sb.append(li).append(xbRDS(_member, "member"));
   }
   if (_product != null && _product.isPresent()) {
     sb.append(li).append(xbRDS(_product, "product"));
   }
   if (_purchasePaymentList != null) {
     for (PurchasePayment et : _purchasePaymentList) {
       if (et != null) {
         sb.append(li).append(xbRDS(et, "purchasePaymentList"));
       }
     }
   }
   return sb.toString();
 }