private void constructFOLDomain()
{
// Ensure the target predicate is included
addPredicate(getFOLName(dataSetSpecification.getTarget()));
// Create the descriptive predicates
foreach (String saName in dataSetSpecification.getNamesOfStringAttributes())
{
if (dataSetSpecification.getTarget().Equals(saName))
{
// Don't add the target to the descriptive predicates
continue;
}
String folSAName = getFOLName(saName);
// Add a predicate for the attribute
addPredicate(folSAName);
descriptionPredicateNames.Add(folSAName);
descriptionDataSetNames.Add(saName);
List<String> attributeValues = dataSetSpecification
.getPossibleAttributeValues(saName);
// If a multivalued attribute need to setup
// Constants for the different possible values
if (isMultivalued(saName))
{
foreach (String av in attributeValues)
{
addConstant(getFOLName(av));
}
}
}
}
}