merge validation commits r23146, r23162, r23163 into trunk
[cdmlib.git] / .gitattributes
index 49b939440a0a8f631357b62ce1beb8121e5e2b4f..974dc35731789b8745f41c52a4b779706b9c66fd 100644 (file)
@@ -441,9 +441,11 @@ cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/UnitsGatheringEvent.java -t
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206DataHolder.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206Import.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportConfigurator.java -text
+cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportReport.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206ImportState.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Abcd206XMLFieldGetter.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/Identification.java -text
+cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/abcd21/ggbn/AbcdGgbnParser.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/excel/in/ExtensionTypeExcelImport.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/excel/in/NamedAreaLevelExcelImport.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/specimen/excel/in/NamedAreaLevellRow.java -text
@@ -479,7 +481,6 @@ cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/taxonx2013/TaxonXTreatmentExtractor.
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/taxonx2013/TaxonXXMLFieldGetter.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/CdmOneToManyXmlMapper.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/CdmSingleAttributeRDFMapperBase.java -text
-cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/CdmSingleAttributeXmlMapperBase.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/CdmTextElementMapper.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/CdmUnclearMapper.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/TcsRdfImportBase.java -text
@@ -491,6 +492,7 @@ cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/TcsRdfTaxonNameImport.java -t
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/TcsRdfTaxonNameRelationsImport.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/TcsRdfTaxonRelationsImport.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsrdf/TcsRdfTransformer.java -text
+cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsxml/CdmSingleAttributeXmlMapperBase.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsxml/DefaultTcsXmlPlaceholders.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsxml/ITcsXmlPlaceholderClass.java -text
 cdmlib-io/src/main/java/eu/etaxonomy/cdm/io/tcsxml/TcsXmlTransformer.java -text
@@ -566,6 +568,7 @@ cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/sdd/in/SDDImportExportTest.java -tex
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/sdd/in/SDDImportTest.java -text
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/sdd/out/SDDCdmExporterTest.java -text
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportConfiguratorTestNonEmptyDB.java -text
+cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/AbcdGgbnImportTest.java -text
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/specimen/abcd206/in/SpecimenImportConfiguratorTest.java -text
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelImportConfiguratorTest.java -text
 cdmlib-io/src/test/java/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelSpecimenImportExampleTest.java -text
@@ -590,6 +593,7 @@ cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/DenormalExplicit.xls
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/DenormalImplied.xls -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest-input-original.xls -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest-input.xls -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest-input.xlsx -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest.testUuid-input.xls -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest.testUuid.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/excel/taxa/NormalExplicitImportTest.xml -text
@@ -641,12 +645,18 @@ cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/sdd/varanusSDD_RatingExample_mo
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/sdd/wrongSDD.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportTestCalvumPart1.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/ABCDImportTestCalvumPart2.xml -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/C_drabifolia_major.cgi -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/Campanula_ABCD_import_3_taxa_11_units.xml -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/Campanula_variety.xml -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/MultipleIdentificationsPreferredFlag.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/SpecimenImportConfiguratorTest-input.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/SpecimenImportConfiguratorTest.doInvoke2.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/SpecimenImportConfiguratorTest.xml -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/campanula_abietina_subspecies.xml -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/abcd206/in/db6.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelImportConfiguratorTest-input.xls -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelSpecimenImportExampleTest-input.xls -text
+cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelSpecimenImportExampleTest-input.xlsx -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelSpecimenImportExampleTest.testResultSet-result.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/specimen/excel/in/ExcelSpecimenImportExampleTest.xml -text
 cdmlib-io/src/test/resources/eu/etaxonomy/cdm/io/taxonx/TaxonXImportConfiguratorTest-input.xml -text
@@ -661,10 +671,13 @@ cdmlib-model/LICENSE.TXT -text
 cdmlib-model/README.TXT -text
 cdmlib-model/pom.xml -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/aspectj/PropertyChangeAspect.aj -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/BigDecimalUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/DOIUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/EnumUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/HibernateProxyHelper.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/PartialUserType.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/SeverityUserType.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/ShiftUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/URIUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/UUIDUserType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/hibernate/WSDLDefinitionUserType.java -text
@@ -701,7 +714,9 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/jaxb/NamespacesElement.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/jaxb/PartialAdapter.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/jaxb/TDWGNamespacePrefixMapper.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/jaxb/UUIDAdapter.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/CdmAssignableTypeFilter.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/CdmBaseType.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/CdmTypeScanner.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/ICdmCacher.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/agent/Address.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/agent/AgentBase.java -text
@@ -734,6 +749,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IDefinedTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IEnumTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IEvent.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IIdentifiableEntity.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IIntextReferencable.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IKeyTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/ILoadableTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IMultiLanguageText.java -text
@@ -743,6 +759,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IParsable.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IPublishable.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IReferencedEntity.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IRelated.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/ISelfDescriptive.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/ISimpleTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/ISourceable.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/ITreeNode.java -text
@@ -750,6 +767,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IVersionableEntity.java
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IdentifiableEntity.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IdentifiableSource.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/Identifier.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/IntextReference.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LSID.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LSIDAuthority.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/LSIDWSDLLocator.java -text
@@ -761,6 +779,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/MarkerType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/MultilanguageText.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/MultilanguageTextHelper.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/NoDefinedTermClassException.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/OrderedTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/OrderedTermBase.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/OrderedTermVocabulary.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/OriginalSourceBase.java -text
@@ -788,7 +807,6 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/init/TermLoader.java -t
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/init/TermNotFoundException.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/package-info.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/common/package.html -text
-cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/AbsenceTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/CategoricalData.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/CommonTaxonName.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/DescriptionBase.java -text
@@ -810,8 +828,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/MultiAccessKey.jav
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/NaturalLanguageTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PolytomousKey.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PolytomousKeyNode.java -text
-cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PresenceAbsenceTermBase.java -text
-cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PresenceTerm.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/PresenceAbsenceTerm.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/QuantitativeData.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/SpecimenDescription.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/description/State.java -text
@@ -852,7 +869,9 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/metadata/CdmPreference.java -t
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/metadata/PreferencePredicate.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/metadata/PreferenceSubject.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/Amplification.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/AmplificationResult.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/Cloning.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/DnaQuality.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/DnaSample.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/PhylogeneticTree.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/Primer.java -text
@@ -860,6 +879,7 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/Sequence.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/SequenceDirection.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/SequenceString.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/SingleRead.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/SingleReadAlignment.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/package-info.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/molecular/package.html -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/name/BacterialName.java -text
@@ -950,10 +970,14 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/taxon/TaxonRelationship.java -
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/taxon/TaxonRelationshipType.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/taxon/package-info.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/taxon/package.html -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/validation/CRUDEventType.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/validation/EntityConstraintViolation.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/validation/EntityValidation.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/validation/EntityValidationStatus.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/validation/Severity.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/AuditEvent.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/AuditEventRecord.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/AuditEventRecordImpl.java -text
-cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/View.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/context/AuditEventContext.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/context/AuditEventContextHolder.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/view/context/AuditEventContextHolderStrategy.java -text
@@ -1041,12 +1065,15 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/ChildTaxaMustN
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/CorrectEpithetsForRank.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/HomotypicSynonymsShouldBelongToGroup.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/InReference.java -text
-cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/MustHaveAuthority.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/NameMustHaveAuthority.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/NamesWithHomotypicRelationshipsMustBelongToSameGroup.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/NoDuplicateNames.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/NoRecursiveInReference.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/NullOrNotEmpty.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/ReferenceCheck.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/TaxonNameCannotBeAcceptedAndSynonym.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/ValidTaxonomicYear.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/annotation/ValidTypeDesignation.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/BasionymsMustShareEpithetsAndAuthorsValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/ChildTaxaMustBeLowerRankThanParentValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/ChildTaxaMustDeriveNameFromParentValidator.java -text
@@ -1056,13 +1083,15 @@ cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/HomotypicSynon
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/InReferenceValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/MustHaveAuthorityValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/NamesWithHomotypicRelationshipsMustBelongToSameGroupValidator.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/NoRecursiveInReferenceValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/NullOrNotEmptyValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/ReferenceCheckValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/StubValidator.java -text
 cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/TaxonNameCannotBeAcceptedAndSynonymValidator.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/TypeDesignationValidator.java -text
+cdmlib-model/src/main/java/eu/etaxonomy/cdm/validation/constraint/ValidTaxonomicYearValidator.java -text
 cdmlib-model/src/main/resources/ValidationMessages.properties -text
 cdmlib-model/src/main/resources/log4j.properties -text
-cdmlib-model/src/main/resources/terms/AbsenceTerm.csv -text
 cdmlib-model/src/main/resources/terms/AnnotationType.csv -text
 cdmlib-model/src/main/resources/terms/Continent.csv -text
 cdmlib-model/src/main/resources/terms/Country.csv -text
@@ -1070,10 +1099,12 @@ cdmlib-model/src/main/resources/terms/DerivationEventType.csv -text
 cdmlib-model/src/main/resources/terms/DeterminationModifier.csv -text
 cdmlib-model/src/main/resources/terms/DnaMarkerChloroplast.csv -text
 cdmlib-model/src/main/resources/terms/DnaMarkerEukaryote.csv -text
+cdmlib-model/src/main/resources/terms/DnaQualityType.csv -text
 cdmlib-model/src/main/resources/terms/ExtensionType.csv -text
 cdmlib-model/src/main/resources/terms/Feature.csv -text
 cdmlib-model/src/main/resources/terms/FormerCountries -text
 cdmlib-model/src/main/resources/terms/HybridRelationshipType.csv -text
+cdmlib-model/src/main/resources/terms/IdentifierType.csv -text
 cdmlib-model/src/main/resources/terms/InstitutionType.csv -text
 cdmlib-model/src/main/resources/terms/Language.csv -text
 cdmlib-model/src/main/resources/terms/MarkerType.csv -text
@@ -1091,7 +1122,7 @@ cdmlib-model/src/main/resources/terms/NomenclaturalCode.csv -text
 cdmlib-model/src/main/resources/terms/NomenclaturalStatusType.csv -text
 cdmlib-model/src/main/resources/terms/NomenclaturalStatusTypeIczn.csv -text
 cdmlib-model/src/main/resources/terms/PlantKindOfUnit.csv -text
-cdmlib-model/src/main/resources/terms/PresenceTerm.csv -text
+cdmlib-model/src/main/resources/terms/PresenceAbsenceTerm.csv -text
 cdmlib-model/src/main/resources/terms/PreservationMethod.csv -text
 cdmlib-model/src/main/resources/terms/README.TXT -text
 cdmlib-model/src/main/resources/terms/Rank.csv -text
@@ -1115,6 +1146,8 @@ cdmlib-model/src/main/resources/update/update_r2.1.2.2_r2.4.1.2.mysql.sql -text
 cdmlib-model/src/main/resources/update/update_term_r2.4.2.1-r2.4.2.2.mysql.sql -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/aspectj/PropertyChangeTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/datagenerator/TaxonGenerator.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/hibernate/BigDecimalUserTypeTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/CdmTypeScannerTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/DatabaseInitialiser.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/agent/AgentValidationTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/agent/InstitutionalMembershipTest.java -text
@@ -1143,7 +1176,7 @@ cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/DescriptionElement
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/FeatureTreeTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/PolytomousKeyNodeTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/PolytomousKeyTest.java -text
-cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/PresenceAbsenceTermBaseTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/PresenceAbsenceTermTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/description/TextDataTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/location/NamedAreaTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/location/PointTest.java -text
@@ -1153,6 +1186,7 @@ cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/media/MediaUtilsTest.java -tex
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/metadata/CdmMetaDataTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/metadata/CdmPreferenceTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/metadata/PreferenceSubjectTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/molecular/AmplificationTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/molecular/MolecularTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/name/BacterialNameTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/model/name/BotanicalNameTest.java -text
@@ -1191,6 +1225,7 @@ cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/reference/BookSection
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/reference/CdDvdDefaultCacheStrategyTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/reference/GenericDefaultCacheStrategyTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/reference/ReferenceTypeTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/reference/WebPageDefaultCacheStrategyTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/cache/taxon/TaxonBaseDefaultCacheStrategyTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/generate/IdentificationKeyGeneratorTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/match/DefaultMatchStrategyTest.java -text
@@ -1200,6 +1235,7 @@ cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/parser/NonViralNameParserIm
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/parser/ParserProblemTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/parser/TimePeriodParserTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/strategy/parser/location/CoordinateConverterTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/BigDecimalTesting.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/TestFullReferenceParser.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/TestModel.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/TestRegExs.java -text
@@ -1209,11 +1245,16 @@ cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/strategy/TestNameCache
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/function/strategy/TestTaxonNameParserBotanicalNameImpl.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/suite/CdmTestSuite.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/test/unit/EntityTestBase.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/BasionymsMustShareEpithetsAndAuthorsTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/CorrectEpithetsForRankTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/MustHaveAuthorityTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/NameValidCharactersTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/ReferenceValidationTest.java -text
 cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/TaxonNameCannotBeAcceptedAndSynonymTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/ValidPointTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/ValidTaxonomicYearTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/ValidTypeDesignationTest.java -text
+cdmlib-model/src/test/java/eu/etaxonomy/cdm/validation/ValidationTestBase.java -text
 cdmlib-model/src/test/resources/log4j.properties -text
 cdmlib-persistence/LICENSE.TXT -text
 cdmlib-persistence/README.TXT -text
@@ -1262,6 +1303,7 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/types/SybaseDatabaseT
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/AuditedSchemaUpdaterStepBase.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/CaseType.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/CdmUpdater.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/ClassBaseTypeUpdater.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/ClassChanger.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/ColumnAdder.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/ColumnNameChanger.java -text
@@ -1316,8 +1358,11 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v31_33/Specime
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v31_33/TermUpdater_31_33.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v31_33/TermVocabularyRepresentationUpdater.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v33_34/SchemaUpdater_331_34.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v33_34/SchemaUpdater_34_341.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v33_34/TermUpdater_33_34.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v33_34/UsernameConstraintUpdater.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v34_35/SchemaUpdater_341_35.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/database/update/v34_35/TermUpdater_34_35.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/IAlternativeSpellingSuggestionParser.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/IMethodCache.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/MethodCacheImpl.java -text
@@ -1412,6 +1457,8 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxo
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonAlternativeSpellingSuggestionParser.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImpl.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonNodeDaoHibernateImpl.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityConstraintViolationHibernateImpl.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationDaoHibernateImpl.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/view/AuditEventDao.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/AbstractBeanInitializer.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/AdvancedBeanInitializer.java -text
@@ -1425,6 +1472,8 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/Me
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/TermBaseAutoInitializer.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/TitleAndNameCacheAutoInitializer.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/initializer/TypeDesignationAutoInitializer.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/jdbc/JdbcDaoUtils.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImpl.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/media/IMediaDao.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/media/IMediaRepresentationDao.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/media/IMediaRepresentationPartDao.java -text
@@ -1445,6 +1494,9 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/taxon/ITaxonNo
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/taxon/tmp/LogicFilter.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/taxon/tmp/TaxonNodeFilter.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/taxon/tmp/TaxonNodeFilterDaoHibernateImpl.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/validation/IEntityConstraintViolationDao.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/validation/IEntityValidationCrud.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/validation/IEntityValidationDao.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/fetch/CdmFetch.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGenerator.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/CdmDataChangeEvent.java -text
@@ -1456,11 +1508,14 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/CdmListe
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/CdmPostDataChangeObservableListener.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/CdmSecurityHibernateInterceptor.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/ICdmPostDataChangeObserver.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/Level2ValidationEventListener.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/Level3ValidationEventListener.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/SaveEntityListener.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/SaveOrUpdateEntityListener.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/TableGenerator.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/TableGeneratorGlobalOverride.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/UpdateEntityListener.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/ValidationEventListenerBase.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/permission/CRUD.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/permission/CdmAuthority.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/hibernate/permission/CdmPermissionClass.java -text
@@ -1495,6 +1550,13 @@ cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/query/MatchMode.ja
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/query/NativeSqlOrderHint.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/query/OrderHint.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/query/RandomOrder.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/EntityValidationTaskBase.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/EntityValidationTaskQueue.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/EntityValidationThread.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/Level2ValidationTask.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/Level3ValidationTask.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/ValidationExecutor.java -text
+cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/validation/ValidationThreadFactory.java -text
 cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/view/IAuditEventDao.java -text
 cdmlib-persistence/src/main/java/org/hibernate/dialect/H2CorrectedDialect.java -text
 cdmlib-persistence/src/main/java/org/hibernate/dialect/HSQLCorrectedDialect.java -text
@@ -1561,12 +1623,29 @@ cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxo
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonDaoHibernateImplTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonNodeDaoHibernateImplTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/tmp/TaxonNodeFilterDaoHibernateImplTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityConstraintViolationDaoHibernateImplTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationDaoHibernateImplTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/hibernate/view/AuditEventDaoTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibenate/permission/CdmAuthorityTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibenate/permission/CdmPermissionClassTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGeneratorTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibernate/CdmDeleteListenerTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibernate/Level2ValidationEventListenerTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibernate/SaveOrUpdateEntityListenerTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibernate/replace/ReferringObjectMetadataFactoryTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/Address.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/CaseMode.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/CheckCase.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/CheckCaseValidator.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/Company.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/Employee.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/EmployeeWithLongRunningValidation.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/EntityValidationTaskQueueTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/EntityValidationTaskTest.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/LongRunningCheckCase.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/LongRunningCheckCaseValidator.java -text
+cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/validation/ValidationExecutorTest.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/profiler/ProfileController.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/profiler/ProfilerController.java -text
 cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/test/function/Datasource.java -text
@@ -1660,13 +1739,28 @@ cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonNodeDaoHibernateImplTest.testSortindexForJavassist.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonNodeDaoHibernateImplTest.testSortindexForJavassist2-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/TaxonNodeDaoHibernateImplTest.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationCrudJdbcImplTest.testReplaceError-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationCrudJdbcImplTest.testSave.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationCrudJdbcImplTest.testSaveAlreadyExistingError-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationDaoHibernateImplTest.testDeleteValidationResult-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/validation/EntityValidationDaoHibernateImplTest.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/hibernate/view/AuditEventDaoTest.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/dataset.dtd -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testAllErrorsSolved-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testOneOldOneNewError-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testReplaceError-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testSameErrorOtherEntity-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testSave.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.testSaveAlreadyExistingError-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.test_DeleteValidationResult-result.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/dao/jdbc/validation/EntityValidationCrudJdbcImplTest.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGeneratorTest.testOnSaveOrUpdateAgents-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGeneratorTest.testOnSaveOrUpdateNames-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGeneratorTest.testOnSaveOrUpdateReferences-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CacheStrategyGeneratorTest.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CdmDeleteListenerTest.testOnDelete-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/CdmDeleteListenerTest.xml -text
+cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/Level2ValidationSaveOrUpdateEventListenerTest.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/replace/ReferringObjectMetadataFactoryTest.testReplaceToManyProperty-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/replace/ReferringObjectMetadataFactoryTest.testReplaceToOneProperty-result.xml -text
 cdmlib-persistence/src/test/resources/eu/etaxonomy/cdm/persistence/hibernate/replace/ReferringObjectMetadataFactoryTest.xml -text
@@ -1732,69 +1826,9 @@ cdmlib-remote-webapp/ide/eclipse/cdmlib-remote[!!-~]-[!!-~]remote[!!-~]debug[!!-
 cdmlib-remote-webapp/ide/eclipse/cdmlib-remote-webapp[!!-~]-[!!-~]profile.launch -text
 cdmlib-remote-webapp/ide/eclipse/cdmlib-remote-webapp[!!-~]-[!!-~]run.launch -text
 cdmlib-remote-webapp/pom.xml -text
+cdmlib-remote-webapp/src/main/java/eu/etaxonomy/cdm/remote/config/CdmSpringMVCConfig.java -text
 cdmlib-remote-webapp/src/main/java/eu/etaxonomy/cdm/remote/config/PreloadedBeans.java -text
-cdmlib-remote-webapp/src/main/java/eu/etaxonomy/cdm/remote/config/SpringMVCConfig.java -text
-cdmlib-remote-webapp/src/main/java/eu/etaxonomy/cdm/remote/vaadin/redlist/wigetset/AppWidgetSet.gwt.xml -text
 cdmlib-remote-webapp/src/main/resources/log4j.properties -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/favicon.ico -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/Thumbs.db -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/VLineSeparator.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/arrow-down.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/arrow-left.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/arrow-right.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/arrow-up.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/attention.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/bg-column.jpg -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/bg-right-column.jpg -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/bottom-left.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/bottom-right.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/calendar.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/cancel.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-add.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-delete.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-doc.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-edit.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-image.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-pdf.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-ppt.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-save.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-txt.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-web.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document-xsl.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/document.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/email-reply.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/email-send.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/email.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/folder-add.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/folder-delete.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/folder.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/globe.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/help.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/lock.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/loginpanel.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/note.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/ok.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/reload.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/settings.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/top-left.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/top-right.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/trash-full.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/trash.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/user.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/users.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/vseparator.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/32/vseparator1.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/OSStack.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/arrow-down.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/arrow-up.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/red_nose_reindeer.jpg -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/reindeer.jpg -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/icons/wizard/vaadin.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/images/document-edit.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/images/gradient.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/images/logo.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/images/table-header-bg.png -text
-cdmlib-remote-webapp/src/main/webapp/VAADIN/themes/mytheme/styles.css -text
 cdmlib-remote-webapp/src/main/webapp/WEB-INF/applicationContext.views.xml -text
 cdmlib-remote-webapp/src/main/webapp/WEB-INF/applicationContext.xml -text
 cdmlib-remote-webapp/src/main/webapp/WEB-INF/cdmlib-remote-servlet.xml -text
@@ -1826,6 +1860,31 @@ cdmlib-remote-webapp/src/main/webapp/css/jquery-ui/images/ui-icons_888888_256x24
 cdmlib-remote-webapp/src/main/webapp/css/jquery-ui/images/ui-icons_cd0a0a_256x240.png -text
 cdmlib-remote-webapp/src/main/webapp/css/jquery-ui/jquery-ui-1.8.23.custom.css -text
 cdmlib-remote-webapp/src/main/webapp/csv/csvExport.jsp -text
+cdmlib-remote-webapp/src/main/webapp/doc/css/cdm.css -text
+cdmlib-remote-webapp/src/main/webapp/doc/css/reset.css -text
+cdmlib-remote-webapp/src/main/webapp/doc/css/screen.css -text
+cdmlib-remote-webapp/src/main/webapp/doc/images/explorer_icons.png -text svneol=unset#unset
+cdmlib-remote-webapp/src/main/webapp/doc/images/logo_small.png -text svneol=unset#unset
+cdmlib-remote-webapp/src/main/webapp/doc/images/pet_store_api.png -text svneol=unset#unset
+cdmlib-remote-webapp/src/main/webapp/doc/images/throbber.gif -text svneol=unset#unset
+cdmlib-remote-webapp/src/main/webapp/doc/images/wordnik_api.png -text svneol=unset#unset
+cdmlib-remote-webapp/src/main/webapp/doc/index.html -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/backbone-min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/handlebars-1.0.0.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/highlight.7.3.pack.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/jquery-1.8.0.min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/jquery.ba-bbq.min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/jquery.slideto.min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/jquery.wiggle.min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/shred.bundle.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/shred/content.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/swagger-oauth.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/swagger.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/lib/underscore-min.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/o2c.html -text
+cdmlib-remote-webapp/src/main/webapp/doc/swagger-ui.js -text
+cdmlib-remote-webapp/src/main/webapp/doc/swagger-ui.min.js -text
+cdmlib-remote-webapp/src/main/webapp/images/logo_edit.png -text svneol=unset#unset
 cdmlib-remote-webapp/src/main/webapp/index.html -text
 cdmlib-remote-webapp/src/main/webapp/js/cdm_ws_progress.js -text
 cdmlib-remote-webapp/src/main/webapp/js/csv_export.js -text
@@ -2008,7 +2067,6 @@ cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/dto/tdwg/voc/TaxonConcept.ja
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/dto/tdwg/voc/TaxonName.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/dto/tdwg/voc/TaxonRelationshipTerm.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/dto/tdwg/voc/Team.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/dto/vaadin/CdmTaxonTableCollection.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/editor/CdmTypePropertyEditor.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/editor/DateTimeEditor.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/editor/DefinedTermBaseList.java -text
@@ -2079,22 +2137,6 @@ cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/service/CdmObjectNonExisting
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/service/DataController.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/service/MetadataController.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/service/Utils.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/VaadinConfigurer.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/VaadinUI.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/ClassificationSelectionForm.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/DemoTaxonTable.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/DetailWindow.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/HorizontalToolbar.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/LoginForm.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/components/TaxonTableDTO.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/service/AuthenticationService.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/disabled/DefaultView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/redlist/views/BfnView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/redlist/views/ClassificationSelectorView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/redlist/views/DashBoardView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/redlist/views/ErrorView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/uiset/redlist/views/LoginView.java -text
-cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/vaadin/widgetset/AppWidgetSet.gwt.xml -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/view/BaseView.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/view/CsvFileDownloadView.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/view/FileDownloadView.java -text
@@ -2119,7 +2161,6 @@ cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/view/oaipmh/rdf/GetRecordVie
 cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/view/oaipmh/rdf/ListRecordsView.java -text
 cdmlib-remote/src/main/java/eu/etaxonomy/remote/dto/rdf/Rdf.java -text
 cdmlib-remote/src/main/java/net/sf/json/CycleSetAcess.java -text
-cdmlib-remote/src/main/java/ru/xpoft/vaadin/CdmDiscoveryNavigator.java -text
 cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote-security.xml -text
 cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote.xml -text
 cdmlib-remote/src/main/resources/eu/etaxonomy/cdm/remote/dto/dwc/mappings.xml -text
@@ -2161,7 +2202,7 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/application/ICdmApplicationCo
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/application/MonitoredGenericApplicationContext.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/application/MonitoredListableBeanFactory.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/cache/CdmCacher.java -text
-cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/cache/CdmDaoCacher.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/cache/CdmTermCacher.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/conversation/ConversationHolder.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/conversation/ConversationHolderMock.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/conversation/IConversationEnabled.java -text
@@ -2189,6 +2230,8 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/DescriptionBuilder.ja
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/DescriptionServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/DistributionNodeByAreaLabelComparator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/DistributionTree.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/EntityConstraintViolationServiceImpl.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/EntityValidationServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/EventBaseServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/FeatureNodeServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/FeatureTreeServiceImpl.java -text
@@ -2203,6 +2246,8 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ICollectionService.ja
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ICommonService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IDatabaseService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IDescriptionService.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IEntityConstraintViolationService.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IEntityValidationService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IEventBaseService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IFeatureNodeService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/IFeatureTreeService.java -text
@@ -2251,10 +2296,12 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TaxaAndNamesSearchMod
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TaxonNodeServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TaxonServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TermServiceImpl.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/UpdateResult.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/UserService.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/VersionableServiceBase.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/VocabularyServiceImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/WorkingSetService.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/CreateHierarchyForClassificationConfigurator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/DeleteConfiguratorBase.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/FindTaxaAndNamesConfiguratorImpl.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/IFindTaxaAndNamesConfigurator.java -text
@@ -2264,6 +2311,7 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/IdentifiableSe
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/IncludedTaxonConfiguration.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/MatchingTaxonConfigurator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/NameDeletionConfigurator.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/SpecimenDeleteConfigurator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/SynonymDeletionConfigurator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/TaxonBaseDeletionConfigurator.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/TaxonDeletionConfigurator.java -text
@@ -2272,6 +2320,7 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/config/TermDeletionCo
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/description/TransmissionEngineDistribution.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/dto/DerivateHierarchyDTO.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/dto/DistributionInfoDTO.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/dto/FindByIdentifierDTO.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/dto/IncludedTaxaDTO.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/exception/DataChangeNoRollbackException.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/exception/HomotypicalGroupChangeException.java -text
@@ -2325,6 +2374,13 @@ cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/util/AbstractRelation
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/util/TaxonRelationshipEdge.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/utility/DescriptionUtility.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/utility/ImagesUtility.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/Level3TransactionalValidationEventListener.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/Level3TransactionalValidationTask.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/ValidationManager.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/batch/BatchValidationUtil.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/batch/BatchValidator.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/batch/EntityValidationUnit.java -text
+cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/validation/batch/ValidationScheduler.java -text
 cdmlib-services/src/main/java/eu/etaxonomy/cdm/validation/constraint/NoDuplicateNamesValidator.java -text
 cdmlib-services/src/main/java/org/apache/lucene/search/MultiCollector.java -text
 cdmlib-services/src/main/resources/eu/etaxonomy/cdm/defaultApplicationContext.xml -text
@@ -2349,6 +2405,7 @@ cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeCache
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeFieldUnitCacheStrategyTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/AbstractSecurityTestBase.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/ClassifcationServiceDeepTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/ClassificationServiceImplTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/CommonServiceImplTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/DescriptionServiceImplTest.java -text
@@ -2359,7 +2416,8 @@ cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/IdentifiableServiceBa
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/IdentificationKeyGeneratorTTT.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/NameServiceImplTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/NaturalLanguageGeneratorTest.java -text
-cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/OccurenceServiceTest.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/OccurrenceServiceDeepDeleteTest.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/PolytomousKeyNodeServiceTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/PolytomousKeyServiceImplTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/PreferenceServiceImplTest.java -text
@@ -2384,6 +2442,7 @@ cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/molecular/PrimerServi
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/molecular/SequenceServiceTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/pager/PagerTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/utility/DescriptionUtilityTest.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/validation/batch/BatchValidatorTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/scripts/FixMultipleTextDataInImageGalleries.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/example/ApplicationExample.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/ConcurrentSessionTest.java -text
@@ -2393,8 +2452,10 @@ cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestC3P0Configurati
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestConversationEnabled.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestDatabase.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestLocationServiceImpl.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestModelUpdate.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestService.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestTaxonFunction.java -text
+cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/function/TestValidationManager.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/integration/CreateDataTest.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/integration/CreateDataTestNoUnit.java -text
 cdmlib-services/src/test/java/eu/etaxonomy/cdm/test/integration/TermLoaderIntegrationTest.java -text
@@ -2415,14 +2476,28 @@ cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/facade/DerivedUnitFacade
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeTest.testSetFieldObjectImageGallery.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/facade/DerivedUnitFacadeTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/BlankDataSet.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/ClassifcationServiceDeepTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/ClassificationServiceImplTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/CommonServiceImplTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/FeatureNodeServiceImplTest-indexing.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/HandlingCdmEntitiesTest.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/IdentifiableServiceBaseTest.testFindByIdentifier.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/IdentifiableServiceBaseTest.testUpdateTitleCache-result.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/IdentifiableServiceBaseTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/MediaDaoImplTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/NameServiceImplTest.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurenceServiceTest.move.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceService.loadData.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceDeepDeleteTest.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testDeleteDerivateHierarchyStepByStep.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testDeleteIndividualAssociatedAndTypeSpecimen.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testIsDeletableWithChildren.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testIsDeletableWithDescribedSpecimenInTaxonDescription.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testIsDeletableWithIndividualsAssociationTaxonDescription.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testIsDeletableWithSpecimenDescription.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testIsDeletableWithTypeDesignation.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.testListAssociatedAndTypedTaxa.xml -text
+cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OccurrenceServiceTest.xml -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OregonScientificDS6639-DSC_0307-small.jpg -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/OregonScientificDS6639-DSC_0307-small.tif -text
 cdmlib-services/src/test/resources/eu/etaxonomy/cdm/api/service/PolytomousKeyServiceImplTest.xml -text