public TrainingItem() {
        PredictionModel model = Context.instance().getPredictionModel();
        if (model != null) {
            int numMetrics = model.getNumMetrics();
            for (int i = 0; i < numMetrics; i++) {
                Metric metric = model.getMetric(i);
                switch (metric.getType()) {
                    case Percent:
                        metricData.put(metric, Integer.valueOf(50));
                        break;

                    case Real:
                        metricData.put(metric, new BigDecimal("0"));
                        break;

                    case YesNo:
                        metricData.put(metric, Boolean.FALSE);
                        break;
                }
            }
            int numResults = model.getNumResults();
            for (int i = 0; i < numResults; i++) {
                Metric metric = model.getResult(i);
                switch (metric.getType()) {
                    case Percent:
                        metricData.put(metric, Integer.valueOf(50));
                        break;

                    case Real:
                        metricData.put(metric, new BigDecimal(0));
                        break;

                    case YesNo:
                        metricData.put(metric, Boolean.FALSE);
                        break;
                }
            }
        }
    }