+ /**\r
+ * Returns all child derivatives of the given specimen.\r
+ * @param specimen the UUID of a specimen or observation\r
+ * @return an unordered list of all child derivatives\r
+ */\r
+ public List<DerivedUnit> getAllChildDerivatives(UUID specimenUuid);\r
+\r
+ /**\r
+ * Returns all {@link FieldUnit}s that are referencing this {@link GatheringEvent}\r
+ * @param gatheringEventUuid the {@link UUID} of the gathering event\r
+ * @return a list of field units referencing the gathering event\r
+ */\r
+ public List<FieldUnit> findFieldUnitsForGatheringEvent(UUID gatheringEventUuid);\r
+\r
+\r
+ /**\r
+ * Returns a list of {@link UuidAndTitleCache} for the specimens found with the\r
+ * given configurator\r
+ * @param config the configurator for the search\r
+ * @return a list of UuidAndTitleCache object\r
+ */\r
+ @Transactional(readOnly = true)\r
+ public Pager<UuidAndTitleCache<SpecimenOrObservationBase>> findByTitleUuidAndTitleCache(\r
+ FindOccurrencesConfigurator config);\r
+\r
+ /**\r
+ * Returns a list of {@link PreservedSpecimenDTO} for the specimens found with the\r
+ * given configurator\r
+ * @param config the configurator for the search\r
+ * @return a list of {@link PreservedSpecimenDTO} object\r
+ */\r
+ @Transactional(readOnly = true)\r
+ public List<PreservedSpecimenDTO> findByTitlePreservedSpecimenDTO(\r
+ FindOccurrencesConfigurator config);\r
+\r
+ /**\r
+ * @param queryString\r
+ * @param propertyPaths\r
+ * @return\r
+ * @throws IOException\r
+ */\r
+ FieldUnitDTO findByAccessionNumber(\r
+ String accessionNumberString, List<OrderHint> orderHints,\r
+ List<String> propertyPaths);\r
+\r
+ /**\r
+ * @param includedRelationships\r
+ * @param associatedTaxon\r
+ * @param maxDepth\r
+ * @param pageSize\r
+ * @param pageNumber\r
+ * @param orderHints\r
+ * @param propertyPaths\r
+ * @return\r
+ */\r
+ List<FieldUnitDTO> findFieldUnitDTOByAssociatedTaxon(Set<TaxonRelationshipEdge> includedRelationships,\r
+ UUID associatedTaxonUuid);\r
+\r
+ /**\r
+ * @param derivedUnitUuid\r
+ * @param propertyPaths\r
+ * @return\r
+ */\r
+\r
+ FieldUnitDTO findFieldUnitDTO(DerivateDTO derivedUnitDTO, Collection<FieldUnitDTO> fieldUnits, HashMap<UUID, DerivateDTO> alreadyCollectedSpecimen);\r
+\r
+\r
+ /**\r
+ * @param fieldUnitUuids\r
+ * @return\r
+ */\r
+ public List<Point> findPointsForFieldUnitList(List<UUID> fieldUnitUuids);\r
+\r
+ /**\r
+ * Load the FieldUnitDTO for the given <code>derivedUnitUuid</code> with all intermediate derivatives and {@link eu.etaxonomy.cdm.api.service.dto.GatheringEventDTO}\r
+ * @param derivedUnitUuid\r
+ * @return\r
+ */\r
+ FieldUnitDTO loadFieldUnitDTO(UUID derivedUnitUuid);\r
+\r