private BRLConditionVariableColumn cloneVariable(BRLConditionVariableColumn variable) {
   BRLConditionVariableColumn clone =
       new BRLConditionVariableColumn(
           variable.getVarName(),
           variable.getFieldType(),
           variable.getFactType(),
           variable.getFactField());
   clone.setHeader(variable.getHeader());
   clone.setHideColumn(variable.isHideColumn());
   clone.setWidth(variable.getWidth());
   return clone;
 }
  private String getType(final BRLConditionVariableColumn col) {

    // If the parameter is not bound to a Fact or FactField use the explicit type. This is
    // (currently)
    // used when a BRL fragment does not contain any Template Keys and a single
    // BRLConditionVariableColumn
    // is created with type SuggestionCompletionEngine.TYPE_BOOLEAN i.e. Limited Entry
    if (col.getFactType() == null && col.getFactField() == null) {
      return col.getFieldType();
    }

    // Otherwise lookup from SuggestionCompletionEngine
    final String factType = col.getFactType();
    final String fieldName = col.getFactField();
    return getTypeFromDataOracle(factType, fieldName);
  }