+ public SpecimenDescription findSpecimenDescription(UUID descriptiveDataSetUuid, UUID specimenUuid, boolean addDatasetSource);
+
+ /**
+ * Creates a new taxon description with the features defined in the dataset for the
+ * taxon associated with the given taxon node.
+ * @param descriptiveDataSetUuid the uuid of the dataset defining the features
+ * @param taxonNodeUuid the uuid of the taxon node that links to the taxon
+ * @param descriptionType the type of the description
+ * @return a taxon row wrapper of the description with the features defined in the data set
+ */
+ public TaxonRowWrapperDTO createTaxonDescription(UUID dataSetUuid, UUID taxonNodeUuid, DescriptionType descriptionType);
+
+ /**
+ * Removes the description specified by the given {@link UUID} from the given {@link DescriptiveDataSet}.
+ * @param descriptionUuid the UUID of the description to delete
+ * @param descriptiveDataSetUuid the UUID of the data set to delete
+ * @return the result of the operation
+ */
+ public DeleteResult removeDescription(UUID descriptionUuid, UUID descriptiveDataSetUuid);
+
+ /**
+ * Loads all taxon nodes that match the filter set defined in the
+ * {@link DescriptiveDataSet} given.
+ * @param the data set which defined the taxon node filter
+ * @return a list of {@link TaxonNode}s from the filtered nodes
+ *
+ */
+ public List<TaxonNode> loadFilteredTaxonNodes(DescriptiveDataSet descriptiveDataSet, List<String> propertyPaths);
+
+ /**
+ * Aggregates the character data of the given {@link DescriptiveDataSet}.<br>
+ * <br>
+ * For all {@link SpecimenDescription}s belonging to this data set new,
+ * aggregated {@link TaxonDescription}s are created for every taxon the specimens are
+ * directly associated with.
+ * @param descriptiveDataSetUuid the uuid of the descriptive data set to which the
+ * aggregated descriptions will be added to
+ * @param config the aggregation configuration
+ * @param monitor the progress monitor
+ * @return the result of the operation
+ */
+ public UpdateResult aggregate(UUID descriptiveDataSetUuid, DescriptionAggregationConfiguration config, IProgressMonitor monitor);
+