commit 150b624dd752005c6979430e51770604f09eb14f
Author: Patrick Plitzner <p.plitzner@bgbm.org>
Date:   Thu Feb 23 14:40:22 2017 +0100

    ref #4611 complete i18n for taxeditor.editor plugin
    
     - also created l10n package and moved Messages.java and teh
    messages.properties files there

diff --git a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages.properties b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages.properties
deleted file mode 100644
index 5a2c6cd2a..000000000
--- a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages.properties
+++ /dev/null
@@ -1,229 +0,0 @@
-CreateDerivateContextMenu_ADD=Add...
-CreateDerivateContextMenu_DNA_SAMPLE=DNA Sample
-CreateDerivateContextMenu_MEDIA=Media...
-CreateDerivateContextMenu_MEDIA_EXISTING=Use existing media item
-CreateDerivateContextMenu_MEDIA_SPECIMEN=Media item
-CreateDerivateContextMenu_NO_CHILD_DERIVATE=No child derivatives
-CreateDerivateContextMenu_SEQUENCE=Consensus Sequence
-CreateDerivateContextMenu_SINGLE_READ=Single Read
-CreateDerivateContextMenu_SPECIMEN=Specimen
-CreateDerivateContextMenu_TISSUE_SAMPLE=Tissue Sample
-
-CreateFieldUnitContextMenu_CREATE_FIELD_UNIT=Create new field unit
-CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR=Create new field unit for %s
-
-SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE=Remove from this Sequence
-SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE=Reuse for other Sequence
-SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE=Reuse SingleRead here
-
-DerivateView_DERIVATIVE_EDITOR=Specimen Editor
-DerivateView_SAVING_HIERARCHY=Saving hierarchy
-DerivateView_UNSAVED_CHANGES=View has unsaved changes
-DerivateView_YOU_NEED_TO_SAVE=You need to save before performing this action
-
-DeleteDerivateOperation_AND_CHILDREN= and its children
-DeleteDerivateOperation_CONFIRM=Confirm Deletion
-DeleteDerivateOperation_DELETE_FAILED=Deletion failed
-DeleteDerivateOperation_REALLY_DELETE=Do you really want to delete the selected element
-
-DerivateDropListener_MOVE_TO=Moving "%s" to "%s"
-
-DerivateViewEditorInput_FAIL_INIT=Failed initializing editor
-DerivateViewEditorInput_NO_ROOT=No root element found\!
-
-MoveDerivateOperation_MOVE_NOT_POSSIBLE=Moving derivatives not possible\!
-MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE=Moving "%s" to "%s" is not possible\!
-
-OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR=Could not open Specimen Editor
-OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN=Failed to open Editor
-OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED=The derivative hierarchy is corrupted\!
-OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND=No Derivatives found
-
-DeleteTaxonBaseHandler_CONFIRM_DELETION=Confirm Deletion
-DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT=Element has to be Synonym, Misapplication or Concept
-DeleteTaxonBaseHandler_REALLY_DELETE_TAXON=Are you sure you want to delete the selected taxon?
-DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM=Are you sure you want to delete the selected synoym, this is irreversible?
-DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=The Synonym could be deleted, but related object(s) could not be deleted
-DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=The misapplied name could be deleted, but related object(s) could not be deleted
-DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION=Are you sure you want to delete the selected misapplication, this is irreversible?
-
-DescriptiveViewPart_COLLAPSE_ALL=Collapse All
-DescriptiveViewPart_EXPAND_ALL=Expand All
-DescriptiveViewPart_FACTUAL_DATA=Factual Data
-DescriptiveViewPart_SHOW_ALL_DATA=Show all factual data
-
-ConceptGraphView_VIEWER_NAME=Concept Graph
-ConceptViewPart_VIEWER_NAME=Concept Relations
-UsesViewPart_VIEWER_NAME=Uses
-
-SetSecundumHandler_configureSettings=Configure the settings for secundum reference exchange of the subtree
-SetSecundumHandler_confirm=Confirm the exchange of secundum reference
-
-DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN=Specimen editor could not be opened
-DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN=Could not open taxon editor for taxon/synonym 
-DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN=Could not open taxon editor for taxon node
-
-OpenChecklistEditorHandler_CHOOSE_AREA=Please choose the areas you want to display. 
-OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE=Could not open Distribution Editor.
-OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE=Could not open Distribution Editor
-OpenChecklistEditorHandler_FAILED_TO_OPEN=Failed to open Editor
-OpenChecklistEditorHandler_GOTO_PREFERENCES=For this go to the preferences, choose the Checklist Editor and choose the areas in the Distribution Selection Wizard.
-OpenChecklistEditorHandler_NO_AREAS=No Areas to display
-OpenDerivateViewHandler_COULD_NOT_OPEN=Specimen editor could not be opened
-
-DeleteNodeHandler_CANCEL=Cancel
-DeleteNodeHandler_CONFIRM_DELETE=Confirm deletion of children
-DeleteNodeHandler_NO=No
-DeleteNodeHandler_NODE_HAS_CHILDREN=The selected node has children, do you want to delete them, too?
-DeleteNodeHandler_REALLY_DELETE=Do you really want to delete the node. This operation is not reversable.
-DeleteNodeHandler_SAVE_CHANGES_MESSAGE=You have made changes that must be saved before you can delete the node. Would you like to proceed?
-DeleteNodeHandler_SAVE_CHANGES_TITLE=Save changes
-DeleteNodeHandler_YES=Yes
-
-DeleteNodeOperation_DELETE_FAILED=Exception occured. Delete not possible
-InsertPolytomousKeyNodeOperation_INSERT_KEY=Insert new polytomous key node
-RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY=Create new polytomous key node
-
-PolytomousKeyEditorLabels_CREATE_NODE=Create Child Polytomous Key Node
-PolytomousKeyEditorLabels_CREATE_SIBLING=Create Sibling Polytomous Key Node
-PolytomousKeyEditorLabels_DELETE_NODE=Delete Polytomous Key Node
-PolytomousKeyEditorLabels_INSERT_NODE=Insert Polytomous Key Node
-PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE=No Key Node Selected.Please right-click on a specific key node to create a new key node.
-PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE=No Key Node Selected.
-PolytomousKeyGraphContentProvider_WRONG_PARENT=Parent element has to be PolytomousKeyNode or PolytomousKey, but was: 
-PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON=leaf but no taxon
-PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET=No node number set
-PolytomousKeyListEditor_EDGE=Edge
-PolytomousKeyListEditor_LINK=Link
-PolytomousKeyListEditor_NODE=Node
-PolytomousKeyListEditor_QUESTION=Question
-PolytomousKeyListEditor_STATEMENT=Statement
-PolytomousKeyListEditor_TAXON=Taxon
-PolytomousKeyListItem_NO_STATEMENT=No statement
-PolytomousKeyListItem_TAXON_EMPTY=Taxon empty
-
-TaxonNameEditor_INVALID_INPUT=Invalid Input: Must be IEditorInput
-TaxonNameEditor_INVALID_INPUT_TAXON_NULL=Invalid Input: Taxon cannot be null
-TaxonNameEditor_SAVING_COMPOSITES=Saving composite: 
-TaxonNameEditor_SAVING_NAMES=Saving names
-TaxonNameEditor_THERE_SHOULD_ALWAYS_BE=There should always be a selected object.
-
-ValidationDaemon_RUNNING_DAEMON=Running validation daemon
-ValidationDaemon_VALIDATION_EXCEPTION=Validation module terminated unexpectedly: 
-ValidationDaemon_VALIDATION_STOPPED=Validation module stopped
-
-ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION=Choose Classification
-ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE=The taxon is part of multiple classification. Please choose the one you want to open.
-EditorStateManager_ERROR_OPEN_WINDOW=Error opening an editor window
-EditorStateManager_REFRESH_EDITOR=Refreshing Editors
-EditorStateManager_RESTORE_EDITORS=Restoring Editors
-EditorUtil_COMFIRM_SAVE=Confirm save
-EditorUtil_CONFIRM_SAVE_MESSAGE=Warning - this operation will save the editor. This will also save all other unsaved changes in your working editor to the database. Please 'Cancel' if you are not ready to do this.
-EditorUtil_ORPHAN_ACCEPTED_TAXON=Orphaned accepted taxon
-EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE=The accepted taxon of this synonym is not part of any classification. Editing with the name editor is currently not implemented. Try to edit the taxon with the bulk editor.
-EditorUtil_ORPHAN_TAXON=Orphaned Taxon
-EditorUtil_ORPHAN_TAXON_MESSAGE=This is an orphaned taxon i.e. a taxon that is not connected to a classification and not having any taxonomic relationships. Editing of orphaned taxa in the name editor is currently not supported. Try editing with the bulk editor
-MultiPageTaxonEditor_INVALID_INPUT=Invalid Input: Must be TaxonEditorInput
-MultiPageTaxonEditor_NEW_TAXON=New taxon
-MultiPageTaxonEditor_NO_NAME_SPECIFIED=No Name Specified
-MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE=An attempt was made to save a taxon or synonym with an empty name. Operation was cancelled.
-MultiPageTaxonEditor_POST_OP_CALLED=postOperation called on MultiPageTaxonEditor. Can you make it more specific?
-MultiPageTaxonEditor_POST_OP_NOT_ENABLED=postOperation not enabled for editor 
-MultiPageTaxonEditor_REFRESH_ERROR=Error refreshing editor
-MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE=Could not refresh this editor
-MultiPageTaxonEditor_SAVING_EDITOR=Saving Editor
-MultiPageTaxonEditor_SAVING_TAXON=saving a taxon
-MultiPageTaxonEditor_SAVING_TAXON_MESSAGE=Please close and reopen the taxon again.
-MultiPageTaxonEditor_UNSAVED_DATA=Editor has unsaved data
-MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE=This editor can not be refreshed because it contains unsaved data. Refreshing this editor would discard the changes. Please save this editor, close and reopen it manually in order to get the latest content
-SimpleSelectionProvider_SETTING_SELECTION=Setting Selection
-TaxonEditorInput_INCORRECT_STATE=Incorrect state
-TaxonEditorInput_NEW_TAXON=New taxon
-TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT=Trying to open accepted taxon for a synonym or misapplication but no accepted taxa are present. This should not have happened.
-TaxonEditorInput_NOT_IMPLEMENTED=Not yet implemented
-TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE=Selected element is not type TaxonBase.
-TaxonEditorInput_OPEN_MISSAPPLIED_NAME=trying to open Mispplied Name 
-TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION=The accepted taxon is not part of any classification. Editing with the name editor is currently not implemented. Try to edit the taxon with the bulk editor.
-TaxonEditorInputFactory_COULD_NOT_CREATE=Could not create element
-TaxonEditorInputFactory_NOT_FOUND_TAXON=Couldn't find taxon node with UUID 
-UseObjectManager_RESET_DATA=Reset usage data
-
-CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR=Saving CDM Authority Editor
-
-EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES=Could not open CDM Authority Editor
-EditCdmAuthoritiesHandler_OPEN_AUTHORITIES=Opening Cdm Authorities
-
-KeyEditor_GRAPH=Graph
-KeyEditor_LIST=List
-KeyEditor_SAVING=Saving Editor
-
-AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW=This name may only be edited in the details view.
-AbstractGroupedContainer_MULTIPLE_USE=The name of this taxons is used multiple times.
-AbstractGroupedContainer_NEW_HETERO_SYNONYM=New Heterotypic Synonym
-ConceptContainer_SEC_REQUIRED=This taxon requires a sec. reference.
-EditorAnnotation_ERROR=Error: 
-EditorAnnotation_WARNING=Warning: 
-IContainerConstants_CLICK_ADD_NAME=Click to add name
-MisapplicationContainer_SEC_REF_REQUIRED=This misapplication requires a sec. reference.
-SynonymContainer_SYNONYM_NULL_NAME=Synonym with a null name detected. This should never happen.
-
-NameEditorDropTargetListener_CHANGE=Change
-NameEditorDropTargetListener_CHANGE_ACC_TAXON=Change accepted Taxon
-NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP=Change Homotypical Group
-NameEditorDropTargetListener_CHANGE_SYNONYM=Change to Synonym
-NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP=Change Synonym to Misapplication
-NameEditorDropTargetListener_UNSUCCESSFULL_DROP=User unsuccessfully tried to drop: %s. Target: %s
-
-ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON=Change synonym to accepted taxon
-ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE=Could not create Taxon
-ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT=Select parent
-MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON=Change accepted Taxon of Synonym
-MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION=No selection
-MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE=No synonym selected
-MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON=Select new accepted taxon
-SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN=Could not open editor for taxon
-
-ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED=Not implemented yet. See developer documentation for details
-ChangeConceptToSynonymOperation_MULTI_REPS=Multiple relations between taxa
-ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE=There are multiple relations between the accepted and the related taxon. This case is not handled by the software yet.
-ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA=Operation may lead to inconsistent data
-ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED=Not yet implemented
-SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED=Not yet implemented
-SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON=Swap Synonym And Accepted Taxon Operation
-
-ChecklistDropdownSelectionListener_ADD_DISTRIBUTION=Add Distribution
-
-ChecklistEditor_DIST_STATUS=Distribution Status
-ChecklistEditor_DIST_STATUS_TOOLTIP=Show Distribution Status for selected Areas
-ChecklistEditor_ELEMENT_COUNT=Element count: 
-ChecklistEditor_LOAD_CNT_TAXA=Loading %d Taxa...
-ChecklistEditor_LOAD_TAXA=loading Taxa
-ChecklistEditor_NO_AREAS=No Areas to display
-ChecklistEditor_NO_AREAS_MESSAGE=Please choose the areas you want to display. Go to the preferences, choose the Checklist Editor and choose the areas in the Distribution Selection Wizard.
-ChecklistEditor_RANK=Rank
-ChecklistEditor_RETRIEVE_NODES=Retrieving TaxonNodes
-ChecklistEditor_SAVE_EDITOR=Saving Editor
-ChecklistEditor_SEARCH=Search: 
-ChecklistEditor_TAXON=Taxon
-ChecklistEditor_UNKNOWN=unknown
-
-OpenRelatedConceptHandler_COULD_NOT_OPEN=Could not open taxon
-OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Could not open the taxon: %s
-
-ListenToSelectionChangeContextMenu_LINK=Link with taxon selection
-ListenToSelectionChangeContextMenu_UNLINK=Unlink from taxon selection
-
-DeleteDerivateHandler_INVALID_SELECTION=Selection is not valid for this delete handler
-OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS=No specimens found
-OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE=No specimens found for the selected object. (Maybe there are unsaved changes)
-OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN=Specimen editor could not be opened
-
-DerivateSearchComposite_ALL=All
-DerivateSearchComposite_DERIVATE_TYPE=Derivative Type
-DerivateSearchComposite_NEW_TEXT=New Text
-DerivateSearchComposite_NO=No
-DerivateSearchComposite_SEARCH=Search
-DerivateSearchComposite_TAXON=Taxon
-DerivateSearchComposite_TAXON_ASSIGNMENT=Taxon assignment
-DerivateSearchComposite_TITLE_CACHE=Title Cache
-DerivateSearchComposite_YES=Yes
diff --git a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages_de.properties b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages_de.properties
deleted file mode 100644
index c9c047fc7..000000000
--- a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/messages_de.properties
+++ /dev/null
@@ -1,229 +0,0 @@
-CreateDerivateContextMenu_ADD=Hinzufügen...
-CreateDerivateContextMenu_DNA_SAMPLE=DNA Probe
-CreateDerivateContextMenu_MEDIA=Media...
-CreateDerivateContextMenu_MEDIA_EXISTING=Vorhandendes Medienobjekt verwenden
-CreateDerivateContextMenu_MEDIA_SPECIMEN=Medienobjekt
-CreateDerivateContextMenu_NO_CHILD_DERIVATE=Keine Kind-Derivate
-CreateDerivateContextMenu_SEQUENCE=Konsensussequenz
-CreateDerivateContextMenu_SINGLE_READ=Single Read
-CreateDerivateContextMenu_SPECIMEN=Beleg
-CreateDerivateContextMenu_TISSUE_SAMPLE=Gewebeprobe
-
-CreateFieldUnitContextMenu_CREATE_FIELD_UNIT=Erzeuge neue Field Unit
-CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR=Erzeuge neue Field Unit für %s
-
-SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE=Von Sequenz entfernen
-SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE=Für andere Sequenz verwenden
-SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE=SingleRead hier verwenden
-
-DerivateView_DERIVATIVE_EDITOR=Specimen-Editor
-DerivateView_SAVING_HIERARCHY=Speichere Hierarchie
-DerivateView_UNSAVED_CHANGES=Ungepeicherte Änderungen
-DerivateView_YOU_NEED_TO_SAVE=Sie müssen speichern, um diese Aktion auszuführen
-
-DeleteDerivateOperation_CONFIRM=Löschen bestätigen
-DeleteDerivateOperation_DELETE_FAILED=Löschen fehlgeschlagen
-DeleteDerivateOperation_REALLY_DELETE=Wollen Sie wirklich das ausgewählte Element löschen
-DeleteDerivateOperation_AND_CHILDREN= (mit Kind-Elementen)
-
-DerivateDropListener_MOVE_TO=Verschiebe "%s" nach "%s"
-
-DerivateViewEditorInput_FAIL_INIT=Initialisierung des Editor fehlgeschlagen
-DerivateViewEditorInput_NO_ROOT=Kein Root-Element gefunden\!
-
-MoveDerivateOperation_MOVE_NOT_POSSIBLE=Verschieben von Derivaten nicht möglich\!
-MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE=Verschieben von "%s" nach "%s" nicht möglich\!
-
-OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR=Konnte Specimen-Editor nicht öffnen
-OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN=Öffnen des Editors fehlgeschlagen
-OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED=Die Derivathierarchie ist korrumpiert\!
-OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND=Keine Derivate gefunden
-
-DeleteTaxonBaseHandler_CONFIRM_DELETION=Löschen bestätigen
-DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT=Element muss Synonym, Misapplikation oder Konzept sein
-DeleteTaxonBaseHandler_REALLY_DELETE_TAXON=Wollen Sie wirklich das ausgewählte Taxon löschen?
-DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM=Wollen Sie das ausgewählte Synonym wirklich löschen, dieser Vorgang ist nicht reversibel.
-DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=Das Synonym konnte gelöscht werden, aber es gibt noch verknüpfte Objekte, die nicht gelöscht werden konnten.
-DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=Die Misapplikation konnte gelöscht werden, aber es gibt noch verknüpfte Objekte, die nicht gelöscht werden konnten.
-DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION=Wollen Sie die ausgewählte Misapplikation wirklich löschen, dieser Vorgang ist nicht reversibel.
-
-DescriptiveViewPart_COLLAPSE_ALL=Alles einklappen
-DescriptiveViewPart_EXPAND_ALL=Alles ausklappen
-DescriptiveViewPart_FACTUAL_DATA=Faktendaten
-DescriptiveViewPart_SHOW_ALL_DATA=Zeige alle Faktendaten
-
-ConceptGraphView_VIEWER_NAME=Konzeptgraph
-ConceptViewPart_VIEWER_NAME=Konzeptrelationen
-UsesViewPart_VIEWER_NAME=Nutzung
-
-SetSecundumHandler_configureSettings=Konfigurieren Sie das Ersetzen der Secundum Referenz für den ausgewählten Teilbaum.
-SetSecundumHandler_confirm=Ersetzen der Secundum Referenz bestätigen
-
-DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden
-DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN=Taxon-Editor für Taxon/Synonym konnte nicht geöffnet werden
-DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN=Taxon-Editor für Taxonknoten konnte nicht geöffnet werden 
-
-OpenChecklistEditorHandler_CHOOSE_AREA=Bitte wählen Sie das Gebiet aus, das dargestellt werden soll
-OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE=Der Verbreitungs-Editor konnte nicht geöffnet werden
-OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE=Der Verbreitungs-Editor konnte nicht geöffnet werden
-OpenChecklistEditorHandler_FAILED_TO_OPEN=Der Editor konnte nicht geöffnet werden
-OpenChecklistEditorHandler_GOTO_PREFERENCES=Hierfür gehen Sie zu den Preferences, wählen Sie Checklist Editor und dann die Gebiete in dem Verbreitungs-Wizard.
-OpenChecklistEditorHandler_NO_AREAS=Keine Gebiete, die angezeigt werden können
-OpenDerivateViewHandler_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden.
-
-DeleteNodeHandler_CANCEL=Abbrechen
-DeleteNodeHandler_CONFIRM_DELETE=Löschen der Kindknoten bestätigen
-DeleteNodeHandler_NO=Nein
-DeleteNodeHandler_NODE_HAS_CHILDREN=Der ausgewählte Knoten hat Kindknoten. Sollen diese auch gelöscht werden?
-DeleteNodeHandler_REALLY_DELETE=Wollen Sie wirklich den Knoten löschen? Diese Operation ist nicht rückgängig zu machen.
-DeleteNodeHandler_SAVE_CHANGES_MESSAGE=Sie haben ungespeicherte Änderungen, die vor dem Löschen des Knotens gespeichert werden müssen. Wollen Sie fortfahren?
-DeleteNodeHandler_SAVE_CHANGES_TITLE=Änderungen speichern
-DeleteNodeHandler_YES=Ja
-
-DeleteNodeOperation_DELETE_FAILED=Ein Fehler ist aufgetreten. Löschen nicht möglich
-InsertPolytomousKeyNodeOperation_INSERT_KEY=Neuen polytomen Bestimmungsschlüssel einfügen
-RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY=Neuen polytomen Bestimmungsschlüssel anlegen
-
-PolytomousKeyEditorLabels_CREATE_NODE=Neuen polytomen Bestimmungsschlüssel anlegen
-PolytomousKeyEditorLabels_CREATE_SIBLING=Neuen polytomen Bestimmungsschlüssel anlegen
-PolytomousKeyEditorLabels_DELETE_NODE=Polytomen Bestimmungsschlüssel löschen
-PolytomousKeyEditorLabels_INSERT_NODE=Polytomen Bestimmungsschlüssel einfügen
-PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE=Kein Schlüssel ausgewählt. Um einen Schlüssel anzulegen, bitte auf einen ausgewählten Schlüssel einen Rechts-Klick ausführen.
-PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE=Kein Schlüssel ausgewählt.
-PolytomousKeyGraphContentProvider_WRONG_PARENT=Der Elternknoten muss ein PolytomousKeyNode oder PolytomousKey sein, war aber: 
-PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON=leaf but no taxon
-PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET=Keine Knotennummer angegeben
-PolytomousKeyListEditor_EDGE=Edge
-PolytomousKeyListEditor_LINK=Link
-PolytomousKeyListEditor_NODE=Node
-PolytomousKeyListEditor_QUESTION=Question
-PolytomousKeyListEditor_STATEMENT=Statement
-PolytomousKeyListEditor_TAXON=Taxon
-PolytomousKeyListItem_NO_STATEMENT=No statement
-PolytomousKeyListItem_TAXON_EMPTY=Taxon leer
-
-TaxonNameEditor_INVALID_INPUT=Ungültige Eingabe: Muss IEditorInput sein
-TaxonNameEditor_INVALID_INPUT_TAXON_NULL=Ungültige Eingabe: Taxon darf nicht null sein
-TaxonNameEditor_SAVING_COMPOSITES=Speichere Composites: 
-TaxonNameEditor_SAVING_NAMES=Speichere Namen 
-TaxonNameEditor_THERE_SHOULD_ALWAYS_BE=Es muss immer ein Objekt ausgewählt sein.
-
-ValidationDaemon_RUNNING_DAEMON=Validation daemon läuft
-ValidationDaemon_VALIDATION_EXCEPTION=Validation-Modul wurde unerwartet beendet: 
-ValidationDaemon_VALIDATION_STOPPED=Validation-Modul angehalten
-
-ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION=Klassifiaktion wählen
-ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE=Das Taxon ist in mehreren Klassifikationen vorhanden. Bitte wählen sie, welche sie öffnen möchten.
-EditorStateManager_ERROR_OPEN_WINDOW=Fehler beim Öffnen des Editors
-EditorStateManager_REFRESH_EDITOR=Aktualisiere Editor
-EditorStateManager_RESTORE_EDITORS=Editor wird wiederhergestellt
-EditorUtil_COMFIRM_SAVE=Speichern bestätigen
-EditorUtil_CONFIRM_SAVE_MESSAGE=Warnung - Diese Operation wird den Editor speichern. Ebenso werden alle weiteren ungespeicherten Änderungen gespeichert. Um das zu verhindern, drücken Sie 'Abbrechen'.
-EditorUtil_ORPHAN_ACCEPTED_TAXON=Verwaistes akzeptiertes Taxon
-EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE=Das akzeptierte Taxon dieses Synonyms ist in keiner Klassifikation vorhanden. Editieren mit dem Namens-Editor ist noch nicht implementiert. Benutzen Sie den Bulk-Editor.
-EditorUtil_ORPHAN_TAXON=Verwaistes Taxon
-EditorUtil_ORPHAN_TAXON_MESSAGE=Dies ist ein verwaistes Taxon d.h. ein Taxon, welches in keiner Klassifikation vorhanden ist und keine Taxonverknüpfungen hat. Editieren von verwaisten Taxa im Namens-Editor ist noch nicht implementiert. Benutzen Sie den Bulk-Editor.
-MultiPageTaxonEditor_INVALID_INPUT=Ungültiger Input: Muss TaxonEditorInput sein
-MultiPageTaxonEditor_NEW_TAXON=Neues Taxon
-MultiPageTaxonEditor_NO_NAME_SPECIFIED=Kein Name angegeben
-MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE=Es wurde versucht ein Taxon oder Synonym mit einem leeren Namen zu speichern. Vorgang abgebrochen.
-MultiPageTaxonEditor_POST_OP_CALLED=postOperation called on MultiPageTaxonEditor. Can you make it more specific?
-MultiPageTaxonEditor_POST_OP_NOT_ENABLED=postOperation not enabled for editor 
-MultiPageTaxonEditor_REFRESH_ERROR=Fehler beim Aktualisieren des Editors
-MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE=Konnte Editor nicht aktualisieren
-MultiPageTaxonEditor_SAVING_EDITOR=Speichere Editor
-MultiPageTaxonEditor_SAVING_TAXON=Speichere Taxon
-MultiPageTaxonEditor_SAVING_TAXON_MESSAGE=Bitte Taxon schließen und erneut öffnen.
-MultiPageTaxonEditor_UNSAVED_DATA=Editor hat ungespeicherte Änderungen
-MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE=Der Editor kann nicht aktualisiert werden, weil es ungespeicherte Änderungen gibt. Aktualisieren würde diese Änderungen verwerfen. Bitte den Editor speichern, schließen und wieder öffnen, um den Inhalt zu aktualisieren.
-SimpleSelectionProvider_SETTING_SELECTION=Auswahl setzen
-TaxonEditorInput_INCORRECT_STATE=Ungültiger Zustand
-TaxonEditorInput_NEW_TAXON=Neues Taxon
-TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT=Öffnen eins akzeptierten Taxons für ein Synonym oder eine Misapplikation, aber kein akzeptiertes Taxon gefunden. Das sollte nicht passieren.
-TaxonEditorInput_NOT_IMPLEMENTED=Noch nicht implementiert
-TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE=Ausgewähltes Element ist nicht vom Typ TaxonBase.
-TaxonEditorInput_OPEN_MISSAPPLIED_NAME=Öffnen einer Misapplikation 
-TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION=Das akzeptierte Taxon ist in keiner Klassifikation vorhanden. Editieren mit dem Namens-Editor ist noch nicht implementier. Benutzen Sie den Bulk-Editor.
-TaxonEditorInputFactory_COULD_NOT_CREATE=Element konnte nicht erstellt werden
-TaxonEditorInputFactory_NOT_FOUND_TAXON=Konnte Taxonknoten nicht finden. UUID 
-UseObjectManager_RESET_DATA=Wiederherstellen der Nutzugsdaten
-
-CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR=Speichere CDM Authority Editor
-
-EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES=Konnte CDM-Authority-Editor nicht öffnen
-EditCdmAuthoritiesHandler_OPEN_AUTHORITIES=Öffne Cdm-Authorities
-
-KeyEditor_GRAPH=Graph
-KeyEditor_LIST=Liste
-KeyEditor_SAVING=Speichere Editor
-
-AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW=Diser Name kann nur im Details-View bearbeitet werden.
-AbstractGroupedContainer_MULTIPLE_USE=Dieser Taxonname wird mehrfach verwendet.
-AbstractGroupedContainer_NEW_HETERO_SYNONYM=Neues heterotypisches Synonym
-ConceptContainer_SEC_REQUIRED=Dieses Taxon benötigt eine sec. Referenz.
-EditorAnnotation_ERROR=Error: 
-EditorAnnotation_WARNING=Warunung: 
-IContainerConstants_CLICK_ADD_NAME=Klicken, um Namen hinzuzufügen
-MisapplicationContainer_SEC_REF_REQUIRED=Diese Misapplikation benötigt eine sec. Referenz.
-SynonymContainer_SYNONYM_NULL_NAME=Synonym mit einem null-Namen entdeckt. Das sollte nicht passieren.
-
-NameEditorDropTargetListener_CHANGE=Ändern
-NameEditorDropTargetListener_CHANGE_ACC_TAXON=Ändere akzeptiertes Taxon
-NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP=Ändere homotypische Gruppe
-NameEditorDropTargetListener_CHANGE_SYNONYM=Ändere in Synonym
-NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP=Ändere Synonym in Misapplikation
-NameEditorDropTargetListener_UNSUCCESSFULL_DROP=Das Ziehen von %s auf %s war nicht erfolgreich.
-
-ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON=Ändere Synonym in akzeptiertes Taxon
-ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE=Konnte Taxon nicht erstellen
-ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT=Wähle Elternelement
-MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON=Ändere akzeptiertes Taxon des Synonyms
-MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION=Keine Auswahl
-MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE=Kein Synonym ausgewählt
-MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON=Wähle neues akzeptiertes Taxon
-SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN=Konnte Editor für Taxon nicht öffnen
-
-ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED=Noch nicht implementiert. Für Details bitte in die Entwickler-Dokumentation schauen
-ChangeConceptToSynonymOperation_MULTI_REPS=Mehrere Verknüpfungen zwischen Taxa
-ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE=Es gibt mehrere Verknüpfungen zwischen dem akzeptierten und dem verknüpften Taxon. Dieser Fall wird noch nicht von der Software unterstützt.
-ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA=Vorgang kann zu inkonsistenten Daten führen
-ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED=Noch nicht implementiert
-SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED=Noch nicht implementiert
-SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON=Tausche Synonym und akzeptiertes Taxon
-
-ChecklistDropdownSelectionListener_ADD_DISTRIBUTION=Verbreitung hinzufügen
-
-ChecklistEditor_DIST_STATUS=Verbreitungsstatus
-ChecklistEditor_DIST_STATUS_TOOLTIP=Zeige den Verbreitungsstatus für die ausgewählten Gebiete
-ChecklistEditor_ELEMENT_COUNT=Anzahl der Elemente: 
-ChecklistEditor_LOAD_CNT_TAXA=Lade %d Taxa...
-ChecklistEditor_LOAD_TAXA=Lade Taxa
-ChecklistEditor_NO_AREAS=Keine Gebiete zum Anzeigen
-ChecklistEditor_NO_AREAS_MESSAGE=Bitte wählen Sie die Gebiete, die sie anzeigen möchten. Unter Einstellungen->Checklist-Editor lassen sich die Gebiete mit dem Verbreitungs-Wizard auswählen.
-ChecklistEditor_RANK=Rang
-ChecklistEditor_RETRIEVE_NODES=Lade Taxonknoten
-ChecklistEditor_SAVE_EDITOR=Speichere Editor
-ChecklistEditor_SEARCH=Suche: 
-ChecklistEditor_TAXON=Taxon
-ChecklistEditor_UNKNOWN=unbekannt
-
-OpenRelatedConceptHandler_COULD_NOT_OPEN=Konnte Taxon nicht öffnen
-OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Konnte Taxon nicht öffnen: %s
-
-ListenToSelectionChangeContextMenu_LINK=Verknüpfe mit Taxonauswahl
-ListenToSelectionChangeContextMenu_UNLINK=Verknüpfung mit Taxonauswahl aufheben
-
-DeleteDerivateHandler_INVALID_SELECTION=Auswahl ungültig
-OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS=Keine Specimens gefunden
-OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE=Keine Specimens für die Auswahl. (Gibt es vielleicht noch ungespeicherte Änderungen?)
-OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden
-
-DerivateSearchComposite_ALL=Alle
-DerivateSearchComposite_DERIVATE_TYPE=Derivat-Typ
-DerivateSearchComposite_NEW_TEXT=Neuer Text
-DerivateSearchComposite_NO=Nein
-DerivateSearchComposite_SEARCH=Suche
-DerivateSearchComposite_TAXON=Taxon
-DerivateSearchComposite_TAXON_ASSIGNMENT=Taxonbestimmung
-DerivateSearchComposite_TITLE_CACHE=Titlecache
-DerivateSearchComposite_YES=Ja
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/ChooseFromMultipleTaxonNodesDialog.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/ChooseFromMultipleTaxonNodesDialog.java
index d4210122c..3cef27580 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/ChooseFromMultipleTaxonNodesDialog.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/ChooseFromMultipleTaxonNodesDialog.java
@@ -22,6 +22,7 @@ import org.eclipse.ui.dialogs.ListDialog;
 
 import eu.etaxonomy.cdm.model.taxon.Classification;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 
 /**
  * <p>ChooseClassificationWizard class.</p>
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorStateManager.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorStateManager.java
index 5efdf254a..1939f83ac 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorStateManager.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorStateManager.java
@@ -20,6 +20,7 @@ import org.eclipse.ui.IMemento;
 import org.eclipse.ui.IPersistable;
 import org.eclipse.ui.PartInitException;
 
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.concept.ConceptViewPart;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptiveViewPart;
 import eu.etaxonomy.taxeditor.editor.view.media.MediaViewPart;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorUtil.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorUtil.java
index 38d1d9afd..b61dc0eda 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorUtil.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorUtil.java
@@ -41,6 +41,7 @@ import eu.etaxonomy.taxeditor.editor.group.authority.CdmAuthorityEditorInput;
 import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
 import eu.etaxonomy.taxeditor.editor.key.KeyEditor;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditorInput;
 //import eu.etaxonomy.taxeditor.store.view.dataimport.BioCaseEditorInput;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/Messages.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/Messages.java
deleted file mode 100644
index bfcf4f29e..000000000
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/Messages.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/**
- * Copyright (C) 2015 EDIT
- * European Distributed Institute of Taxonomy
- * http://www.e-taxonomy.eu
- *
- * The contents of this file are subject to the Mozilla Public License Version 1.1
- * See LICENSE.TXT at the top of this package for the full license terms.
- */
-package eu.etaxonomy.taxeditor.editor;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * @author pplitzner
- * @date 09.09.2015
- *
- */
-public class Messages extends NLS {
-    private static final String BUNDLE_NAME = "OSGI-INF/l10n/messages"; //$NON-NLS-1$
-    public static String AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW;
-    public static String AbstractGroupedContainer_MULTIPLE_USE;
-    public static String AbstractGroupedContainer_NEW_HETERO_SYNONYM;
-    public static String CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR;
-    public static String ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED;
-    public static String ChangeConceptToSynonymOperation_MULTI_REPS;
-    public static String ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE;
-    public static String ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON;
-    public static String ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE;
-    public static String ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT;
-    public static String ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA;
-    public static String ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED;
-    public static String ChecklistDropdownSelectionListener_ADD_DISTRIBUTION;
-    public static String ChecklistEditor_DIST_STATUS;
-    public static String ChecklistEditor_DIST_STATUS_TOOLTIP;
-    public static String ChecklistEditor_ELEMENT_COUNT;
-    public static String ChecklistEditor_LOAD_CNT_TAXA;
-    public static String ChecklistEditor_LOAD_TAXA;
-    public static String ChecklistEditor_NO_AREAS;
-    public static String ChecklistEditor_NO_AREAS_MESSAGE;
-    public static String ChecklistEditor_RANK;
-    public static String ChecklistEditor_RETRIEVE_NODES;
-    public static String ChecklistEditor_SAVE_EDITOR;
-    public static String ChecklistEditor_SEARCH;
-    public static String ChecklistEditor_TAXON;
-    public static String ChecklistEditor_UNKNOWN;
-    public static String ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION;
-    public static String ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE;
-    public static String ConceptContainer_SEC_REQUIRED;
-    public static String ConceptGraphView_VIEWER_NAME;
-	public static String ConceptViewPart_VIEWER_NAME;
-	public static String CreateDerivateContextMenu_ADD;
-    public static String CreateDerivateContextMenu_DNA_SAMPLE;
-    public static String CreateDerivateContextMenu_MEDIA;
-    public static String CreateDerivateContextMenu_MEDIA_EXISTING;
-    public static String CreateDerivateContextMenu_MEDIA_SPECIMEN;
-    public static String CreateDerivateContextMenu_NO_CHILD_DERIVATE;
-    public static String CreateDerivateContextMenu_SEQUENCE;
-    public static String CreateDerivateContextMenu_SINGLE_READ;
-    public static String CreateDerivateContextMenu_SPECIMEN;
-    public static String CreateDerivateContextMenu_TISSUE_SAMPLE;
-    public static String CreateFieldUnitContextMenu_CREATE_FIELD_UNIT;
-	public static String CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR;
-	public static String DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN;
-    public static String DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN;
-    public static String DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN;
-    public static String DeleteDerivateHandler_INVALID_SELECTION;
-    public static String DeleteDerivateOperation_AND_CHILDREN;
-    public static String DeleteDerivateOperation_CONFIRM;
-    public static String DeleteDerivateOperation_DELETE_FAILED;
-    public static String DeleteDerivateOperation_REALLY_DELETE;
-    public static String DeleteNodeHandler_CANCEL;
-    public static String DeleteNodeHandler_CONFIRM_DELETE;
-    public static String DeleteNodeHandler_NO;
-    public static String DeleteNodeHandler_NODE_HAS_CHILDREN;
-    public static String DeleteNodeHandler_REALLY_DELETE;
-    public static String DeleteNodeHandler_SAVE_CHANGES_MESSAGE;
-    public static String DeleteNodeHandler_SAVE_CHANGES_TITLE;
-    public static String DeleteNodeHandler_YES;
-    public static String DeleteNodeOperation_DELETE_FAILED;
-    public static String DeleteTaxonBaseHandler_CONFIRM_DELETION;
-    public static String DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT;
-    public static String DeleteTaxonBaseHandler_REALLY_DELETE_TAXON;
-    public static String DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM;
-    public static String DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION;
-    public static String DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS;
-    public static String DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS;
-
-
-    public static String DerivateDropListener_MOVE_TO;
-    public static String DerivateSearchComposite_ALL;
-    public static String DerivateSearchComposite_DERIVATE_TYPE;
-    public static String DerivateSearchComposite_NEW_TEXT;
-    public static String DerivateSearchComposite_NO;
-    public static String DerivateSearchComposite_SEARCH;
-    public static String DerivateSearchComposite_TAXON;
-    public static String DerivateSearchComposite_TAXON_ASSIGNMENT;
-    public static String DerivateSearchComposite_TITLE_CACHE;
-    public static String DerivateSearchComposite_YES;
-    public static String DerivateView_DERIVATIVE_EDITOR;
-    public static String DerivateView_SAVING_HIERARCHY;
-    public static String DerivateView_UNSAVED_CHANGES;
-    public static String DerivateView_YOU_NEED_TO_SAVE;
-    public static String DerivateViewEditorInput_FAIL_INIT;
-    public static String DerivateViewEditorInput_NO_ROOT;
-    public static String DerivateViewEditorInput_SPECIMEN_EDITOR;
-    public static String DescriptionElementTransfer_0;
-    public static String DescriptiveViewPart_COLLAPSE_ALL;
-	public static String DescriptiveViewPart_EXPAND_ALL;
-	public static String DescriptiveViewPart_FACTUAL_DATA;
-	public static String DescriptiveViewPart_SHOW_ALL_DATA;
-    public static String EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES;
-    public static String EditCdmAuthoritiesHandler_OPEN_AUTHORITIES;
-    public static String EditorAnnotation_ERROR;
-    public static String EditorAnnotation_WARNING;
-    public static String EditorStateManager_ERROR_OPEN_WINDOW;
-    public static String EditorStateManager_REFRESH_EDITOR;
-    public static String EditorStateManager_RESTORE_EDITORS;
-    public static String EditorUtil_COMFIRM_SAVE;
-    public static String EditorUtil_CONFIRM_SAVE_MESSAGE;
-    public static String EditorUtil_ORPHAN_ACCEPTED_TAXON;
-    public static String EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE;
-    public static String EditorUtil_ORPHAN_TAXON;
-    public static String EditorUtil_ORPHAN_TAXON_MESSAGE;
-    public static String IContainerConstants_CLICK_ADD_NAME;
-    public static String InsertPolytomousKeyNodeOperation_INSERT_KEY;
-	public static String KeyEditor_GRAPH;
-    public static String KeyEditor_LIST;
-    public static String KeyEditor_SAVING;
-    public static String ListenToSelectionChangeContextMenu_LINK;
-    public static String ListenToSelectionChangeContextMenu_UNLINK;
-    public static String MisapplicationContainer_SEC_REF_REQUIRED;
-    public static String MoveDerivateOperation_MOVE_NOT_POSSIBLE;
-    public static String MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE;
-    public static String MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON;
-    public static String MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION;
-    public static String MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE;
-    public static String MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON;
-    public static String MultiPageTaxonEditor_INVALID_INPUT;
-    public static String MultiPageTaxonEditor_NEW_TAXON;
-    public static String MultiPageTaxonEditor_NO_NAME_SPECIFIED;
-    public static String MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE;
-    public static String MultiPageTaxonEditor_POST_OP_CALLED;
-    public static String MultiPageTaxonEditor_POST_OP_NOT_ENABLED;
-    public static String MultiPageTaxonEditor_REFRESH_ERROR;
-    public static String MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE;
-    public static String MultiPageTaxonEditor_SAVING_EDITOR;
-    public static String MultiPageTaxonEditor_SAVING_TAXON;
-    public static String MultiPageTaxonEditor_SAVING_TAXON_MESSAGE;
-    public static String MultiPageTaxonEditor_UNSAVED_DATA;
-    public static String MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE;
-    public static String NameEditorDropTargetListener_CHANGE_ACC_TAXON;
-    public static String NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP;
-    public static String NameEditorDropTargetListener_CHANGE;
-    public static String NameEditorDropTargetListener_CHANGE_SYNONYM;
-    public static String NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP;
-    public static String NameEditorDropTargetListener_UNSUCCESSFULL_DROP;
-    public static String OpenChecklistEditorHandler_CHOOSE_AREA;
-    public static String OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE;
-    public static String OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE;
-    public static String OpenChecklistEditorHandler_FAILED_TO_OPEN;
-    public static String OpenChecklistEditorHandler_GOTO_PREFERENCES;
-    public static String OpenChecklistEditorHandler_NO_AREAS;
-    public static String OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR;
-    public static String OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN;
-    public static String OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED;
-    public static String OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND;
-    public static String OpenDerivateViewHandler_COULD_NOT_OPEN;
-    public static String OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS;
-    public static String OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE;
-    public static String OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN;
-    public static String OpenRelatedConceptHandler_COULD_NOT_OPEN;
-    public static String OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE;
-    public static String PolytomousKeyEditorLabels_CREATE_NODE;
-    public static String PolytomousKeyEditorLabels_CREATE_SIBLING;
-    public static String PolytomousKeyEditorLabels_DELETE_NODE;
-    public static String PolytomousKeyEditorLabels_INSERT_NODE;
-    public static String PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE;
-    public static String PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE;
-    public static String PolytomousKeyGraphContentProvider_WRONG_PARENT;
-    public static String PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON;
-    public static String PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET;
-    public static String PolytomousKeyListEditor_EDGE;
-    public static String PolytomousKeyListEditor_LINK;
-    public static String PolytomousKeyListEditor_NODE;
-    public static String PolytomousKeyListEditor_QUESTION;
-    public static String PolytomousKeyListEditor_STATEMENT;
-    public static String PolytomousKeyListEditor_TAXON;
-    public static String PolytomousKeyListItem_NO_STATEMENT;
-    public static String PolytomousKeyListItem_TAXON_EMPTY;
-    public static String RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY;
-    public static String SimpleSelectionProvider_SETTING_SELECTION;
-    public static String SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE;
-    public static String SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE;
-    public static String SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE;
-	public static String UseObjectManager_RESET_DATA;
-    public static String UsesViewPart_VIEWER_NAME;
-    public static String SetSecundumHandler_configureSettings;
-    public static String SetSecundumHandler_confirm;
-    public static String SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN;
-    public static String SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED;
-    public static String SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON;
-    public static String SynonymContainer_SYNONYM_NULL_NAME;
-    public static String TaxonEditorInput_INCORRECT_STATE;
-    public static String TaxonEditorInput_NEW_TAXON;
-    public static String TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT;
-    public static String TaxonEditorInput_NOT_IMPLEMENTED;
-    public static String TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE;
-    public static String TaxonEditorInput_OPEN_MISSAPPLIED_NAME;
-    public static String TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION;
-    public static String TaxonEditorInputFactory_COULD_NOT_CREATE;
-    public static String TaxonEditorInputFactory_NOT_FOUND_TAXON;
-    public static String TaxonNameEditor_INVALID_INPUT;
-    public static String TaxonNameEditor_INVALID_INPUT_TAXON_NULL;
-    public static String TaxonNameEditor_SAVING_COMPOSITES;
-    public static String TaxonNameEditor_SAVING_NAMES;
-    public static String TaxonNameEditor_THERE_SHOULD_ALWAYS_BE;
-    public static String ValidationDaemon_RUNNING_DAEMON;
-    public static String ValidationDaemon_VALIDATION_EXCEPTION;
-    public static String ValidationDaemon_VALIDATION_STOPPED;
-    static {
-        // initialize resource bundle
-        NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-    }
-
-    private Messages() {
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
index ef7fe766f..7241f84ff 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
@@ -34,6 +34,7 @@ import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractGroupedContainer;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java
index 618aede1d..355b5e453 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java
@@ -24,6 +24,8 @@ import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.swt.widgets.Display;
 
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
+
 /**
  * <p>SimpleSelectionProvider class.</p>
  *
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java
index 6ead06962..6fbc03197 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java
@@ -37,6 +37,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.DataChangeBridge;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInputFactory.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInputFactory.java
index 4c83d6448..1e7abe005 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInputFactory.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInputFactory.java
@@ -16,6 +16,7 @@ import org.eclipse.ui.IElementFactory;
 import org.eclipse.ui.IMemento;
 
 import eu.etaxonomy.cdm.api.service.IClassificationService;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/UseObjectManager.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/UseObjectManager.java
index fedd646a6..747e0b69e 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/UseObjectManager.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/UseObjectManager.java
@@ -11,6 +11,7 @@ package eu.etaxonomy.taxeditor.editor;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.ui.IMemento;
 
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.ContextListenerAdapter;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditor.java
index 06f62be9c..02fc68758 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditor.java
@@ -22,7 +22,7 @@ import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.model.common.Group;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.ui.group.grantedauthority.CdmAuthorityCompositeViewer;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java
index 56f427d72..a52db81ca 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java
@@ -21,8 +21,8 @@ import org.eclipse.swt.widgets.Display;
 import eu.etaxonomy.cdm.model.common.Group;
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.group.authority.CdmAuthorityEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.LineSelection;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java
index f9440048d..245f8fb6d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java
@@ -12,7 +12,7 @@ import eu.etaxonomy.cdm.model.taxon.Classification;
 import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditorInput;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java
index a4563f082..04101f6cd 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java
@@ -6,7 +6,7 @@ import org.eclipse.core.commands.ExecutionException;
 import org.eclipse.ui.PartInitException;
 
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenSpecimenEditorForTypeSpecimenHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenSpecimenEditorForTypeSpecimenHandler.java
index 2e4779f79..9c186819c 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenSpecimenEditorForTypeSpecimenHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenSpecimenEditorForTypeSpecimenHandler.java
@@ -6,7 +6,7 @@ import org.eclipse.ui.PartInitException;
 
 import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonBaseHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonBaseHandler.java
index 1fd11f39a..431a898cc 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonBaseHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonBaseHandler.java
@@ -7,7 +7,7 @@ import org.eclipse.ui.PartInitException;
 import eu.etaxonomy.cdm.api.service.ITaxonService;
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonNodeHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonNodeHandler.java
index d1dd99333..b6c18e6ef 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonNodeHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/defaultHandler/DefaultOpenTaxonEditorForTaxonNodeHandler.java
@@ -7,8 +7,8 @@ import org.eclipse.ui.PartInitException;
 import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/KeyEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/KeyEditor.java
index 26eb8516f..1cd36d711 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/KeyEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/KeyEditor.java
@@ -24,10 +24,10 @@ import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.description.PolytomousKey;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorInput;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyGraphEditor;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyListEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.DataChangeBridge;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyEditorLabels.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyEditorLabels.java
index 7da710aa2..94d7fd20d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyEditorLabels.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyEditorLabels.java
@@ -8,7 +8,7 @@
 */
 package eu.etaxonomy.taxeditor.editor.key.polytomous;
 
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 
 /**
  * @author cmathew
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyGraphContentProvider.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyGraphContentProvider.java
index 253b994c3..f2ac1a9c3 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyGraphContentProvider.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyGraphContentProvider.java
@@ -17,7 +17,7 @@ import org.eclipse.zest.core.viewers.IGraphContentProvider;
 
 import eu.etaxonomy.cdm.model.description.PolytomousKey;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.PolytomousKeyRelationship;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyLabelProvider.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyLabelProvider.java
index 120a0d409..506d2cec6 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyLabelProvider.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyLabelProvider.java
@@ -19,7 +19,7 @@ import eu.etaxonomy.cdm.model.common.Language;
 import eu.etaxonomy.cdm.model.description.KeyStatement;
 import eu.etaxonomy.cdm.model.description.PolytomousKey;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.PolytomousKeyRelationship;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListEditor.java
index c9448aad0..61e859296 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListEditor.java
@@ -44,8 +44,8 @@ import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.key.KeyEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListItem.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListItem.java
index 895d921d4..187900a79 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListItem.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/PolytomousKeyListItem.java
@@ -27,7 +27,7 @@ import eu.etaxonomy.cdm.model.description.KeyStatement;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.ui.element.AbstractCdmFormElement;
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/handler/DeleteNodeHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/handler/DeleteNodeHandler.java
index 6951f99ed..01a42bedc 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/handler/DeleteNodeHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/handler/DeleteNodeHandler.java
@@ -22,11 +22,11 @@ import org.eclipse.ui.handlers.HandlerUtil;
 
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.key.KeyEditor;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.IPolytomousKeyEditorPage;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorLabels;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.operation.DeleteNodeOperation;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java
index c232468a1..1f04dd1d4 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java
@@ -15,7 +15,7 @@ import eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
 import eu.etaxonomy.taxeditor.bulkeditor.internal.TaxeditorBulkeditorPlugin;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/InsertPolytomousKeyNodeOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/InsertPolytomousKeyNodeOperation.java
index 20c5f1082..092bf795b 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/InsertPolytomousKeyNodeOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/InsertPolytomousKeyNodeOperation.java
@@ -17,7 +17,7 @@ import org.eclipse.core.runtime.IProgressMonitor;
 import eu.etaxonomy.cdm.api.application.CdmChangeEvent.Action;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.operation.RemotingCdmDefaultOperation;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/RemotingCreatePolytomousKeyNodeOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/RemotingCreatePolytomousKeyNodeOperation.java
index a2f0ef0c8..ad7844a1e 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/RemotingCreatePolytomousKeyNodeOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/RemotingCreatePolytomousKeyNodeOperation.java
@@ -14,7 +14,7 @@ import org.eclipse.core.runtime.IProgressMonitor;
 import eu.etaxonomy.cdm.api.application.CdmChangeEvent.Action;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.operation.RemotingCdmDefaultOperation;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/Messages.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/Messages.java
new file mode 100644
index 000000000..571a167b8
--- /dev/null
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/Messages.java
@@ -0,0 +1,261 @@
+/**
+ * Copyright (C) 2015 EDIT
+ * European Distributed Institute of Taxonomy
+ * http://www.e-taxonomy.eu
+ *
+ * The contents of this file are subject to the Mozilla Public License Version 1.1
+ * See LICENSE.TXT at the top of this package for the full license terms.
+ */
+package eu.etaxonomy.taxeditor.editor.l10n;
+
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * @author pplitzner
+ * @date 09.09.2015
+ *
+ */
+public class Messages extends NLS {
+    private static final String BUNDLE_NAME = "eu.etaxonomy.taxeditor.editor.l10n.messages"; //$NON-NLS-1$
+    public static String AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW;
+    public static String AbstractGroupedContainer_MULTIPLE_USE;
+    public static String AbstractGroupedContainer_NEW_HETERO_SYNONYM;
+    public static String AddDerivedUnitFacadeMediaOperation_CREATE_FAILED;
+    public static String AddDerivedUnitFacadeMediaOperation_CREATE_FAILED_MESSAGE;
+    public static String CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR;
+    public static String ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED;
+    public static String ChangeConceptToSynonymOperation_MULTI_REPS;
+    public static String ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE;
+    public static String ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON;
+    public static String ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE;
+    public static String ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT;
+    public static String ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA;
+    public static String ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED;
+    public static String ChecklistDropdownSelectionListener_ADD_DISTRIBUTION;
+    public static String ChecklistEditor_DIST_STATUS;
+    public static String ChecklistEditor_DIST_STATUS_TOOLTIP;
+    public static String ChecklistEditor_ELEMENT_COUNT;
+    public static String ChecklistEditor_LOAD_CNT_TAXA;
+    public static String ChecklistEditor_LOAD_TAXA;
+    public static String ChecklistEditor_NO_AREAS;
+    public static String ChecklistEditor_NO_AREAS_MESSAGE;
+    public static String ChecklistEditor_RANK;
+    public static String ChecklistEditor_RETRIEVE_NODES;
+    public static String ChecklistEditor_SAVE_EDITOR;
+    public static String ChecklistEditor_SEARCH;
+    public static String ChecklistEditor_TAXON;
+    public static String ChecklistEditor_UNKNOWN;
+    public static String ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION;
+    public static String ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE;
+    public static String ConceptContainer_SEC_REQUIRED;
+    public static String ConceptGraphView_VIEWER_NAME;
+	public static String ConceptViewPart_VIEWER_NAME;
+	public static String CreateDerivateContextMenu_ADD;
+    public static String CreateDerivateContextMenu_DNA_SAMPLE;
+    public static String CreateDerivateContextMenu_MEDIA;
+    public static String CreateDerivateContextMenu_MEDIA_EXISTING;
+    public static String CreateDerivateContextMenu_MEDIA_SPECIMEN;
+    public static String CreateDerivateContextMenu_NO_CHILD_DERIVATE;
+    public static String CreateDerivateContextMenu_SEQUENCE;
+    public static String CreateDerivateContextMenu_SINGLE_READ;
+    public static String CreateDerivateContextMenu_SPECIMEN;
+    public static String CreateDerivateContextMenu_TISSUE_SAMPLE;
+    public static String CreateFieldUnitContextMenu_CREATE_FIELD_UNIT;
+	public static String CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR;
+	public static String DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN;
+    public static String DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN;
+    public static String DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN;
+    public static String DeleteDerivateHandler_INVALID_SELECTION;
+    public static String DeleteDerivateOperation_AND_CHILDREN;
+    public static String DeleteDerivateOperation_CONFIRM;
+    public static String DeleteDerivateOperation_DELETE_FAILED;
+    public static String DeleteDerivateOperation_REALLY_DELETE;
+    public static String DeleteDescriptionElementOperation_DESC_NOT_FOUND;
+    public static String DeleteHandler_CONFIRM_DELETION;
+    public static String DeleteHandler_CONFIRM_DELETION_MESSAGE;
+    public static String DeleteHandler_DELETE;
+    public static String DeleteHandler_INVALID_SELECTION;
+    public static String DeleteHandler_SKIP;
+    public static String DeleteMediaHandler_CONFIRM;
+    public static String DeleteMediaHandler_CONFIRM_MESSAGE;
+    public static String DeleteMediaHandler_DELETE;
+    public static String DeleteMediaHandler_SKIP;
+    public static String DeleteNodeHandler_CANCEL;
+    public static String DeleteNodeHandler_CONFIRM_DELETE;
+    public static String DeleteNodeHandler_NO;
+    public static String DeleteNodeHandler_NODE_HAS_CHILDREN;
+    public static String DeleteNodeHandler_REALLY_DELETE;
+    public static String DeleteNodeHandler_SAVE_CHANGES_MESSAGE;
+    public static String DeleteNodeHandler_SAVE_CHANGES_TITLE;
+    public static String DeleteNodeHandler_YES;
+    public static String DeleteNodeOperation_DELETE_FAILED;
+    public static String DeleteTaxonBaseHandler_CONFIRM_DELETION;
+    public static String DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT;
+    public static String DeleteTaxonBaseHandler_REALLY_DELETE_TAXON;
+    public static String DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM;
+    public static String DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION;
+    public static String DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS;
+    public static String DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS;
+
+
+    public static String DerivateDropListener_MOVE_TO;
+    public static String DerivateSearchComposite_ALL;
+    public static String DerivateSearchComposite_DERIVATE_TYPE;
+    public static String DerivateSearchComposite_NEW_TEXT;
+    public static String DerivateSearchComposite_NO;
+    public static String DerivateSearchComposite_SEARCH;
+    public static String DerivateSearchComposite_TAXON;
+    public static String DerivateSearchComposite_TAXON_ASSIGNMENT;
+    public static String DerivateSearchComposite_TITLE_CACHE;
+    public static String DerivateSearchComposite_YES;
+    public static String DerivateView_CNT_DERIVATIVES_FOUND;
+    public static String DerivateView_DERIVATIVE_EDITOR;
+    public static String DerivateView_NO_TAXON_SELECTED;
+    public static String DerivateView_PERF_WARNING;
+    public static String DerivateView_PERF_WARNING_MESSAGE;
+    public static String DerivateView_SAVING_HIERARCHY;
+    public static String DerivateView_SPECIMEN_EDITOR;
+    public static String DerivateView_UNSAVED_CHANGES;
+    public static String DerivateView_YOU_NEED_TO_SAVE;
+    public static String DerivateViewEditorInput_FAIL_INIT;
+    public static String DerivateViewEditorInput_NO_ROOT;
+    public static String DerivateViewEditorInput_SPECIMEN_EDITOR;
+    public static String DescriptionElementDropAdapter_MOVE_DESC;
+    public static String DescriptionElementDropAdapter_NOT_SUPPORTED;
+    public static String DescriptionElementDropAdapter_NOT_SUPPORTED_EMPTY_ELEMENT;
+    public static String DescriptionElementDropAdapter_NOT_SUPPORTED_NEW_ELEMENT;
+    public static String DescriptionElementTransfer_0;
+    public static String DescriptiveViewPart_COLLAPSE_ALL;
+	public static String DescriptiveViewPart_EXPAND_ALL;
+	public static String DescriptiveViewPart_FACTUAL_DATA;
+	public static String DescriptiveViewPart_SHOW_ALL_DATA;
+    public static String EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES;
+    public static String EditCdmAuthoritiesHandler_OPEN_AUTHORITIES;
+    public static String EditorAnnotation_ERROR;
+    public static String EditorAnnotation_WARNING;
+    public static String EditorStateManager_ERROR_OPEN_WINDOW;
+    public static String EditorStateManager_REFRESH_EDITOR;
+    public static String EditorStateManager_RESTORE_EDITORS;
+    public static String EditorUtil_COMFIRM_SAVE;
+    public static String EditorUtil_CONFIRM_SAVE_MESSAGE;
+    public static String EditorUtil_ORPHAN_ACCEPTED_TAXON;
+    public static String EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE;
+    public static String EditorUtil_ORPHAN_TAXON;
+    public static String EditorUtil_ORPHAN_TAXON_MESSAGE;
+    public static String IContainerConstants_CLICK_ADD_NAME;
+    public static String InsertPolytomousKeyNodeOperation_INSERT_KEY;
+	public static String KeyEditor_GRAPH;
+    public static String KeyEditor_LIST;
+    public static String KeyEditor_SAVING;
+    public static String ListenToSelectionChangeContextMenu_LINK;
+    public static String ListenToSelectionChangeContextMenu_UNLINK;
+    public static String MediaViewPart_MEDIA;
+    public static String MisapplicationContainer_SEC_REF_REQUIRED;
+    public static String MoveDerivateOperation_MOVE_NOT_POSSIBLE;
+    public static String MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE;
+    public static String MoveDescriptionElementsHandler_CHOOSE_ACC_TAXON;
+    public static String MoveDescriptionElementsHandler_CREATE_FAILURE;
+    public static String MoveDescriptionElementsHandler_ELEMENTS_MOVED;
+    public static String MoveDescriptionToOtherTaxonHandler_CHOOSE_ACC_TAXON;
+    public static String MoveDescriptionToOtherTaxonHandler_CREATE_FAILED;
+    public static String MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES;
+    public static String MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES_MESSAGE;
+    public static String MoveDescriptionToOtherTaxonOperation_MOVED_FROM;
+    public static String MoveMediaInListOperation_MORE_DESC;
+    public static String MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON;
+    public static String MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION;
+    public static String MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE;
+    public static String MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON;
+    public static String MultiPageTaxonEditor_INVALID_INPUT;
+    public static String MultiPageTaxonEditor_NEW_TAXON;
+    public static String MultiPageTaxonEditor_NO_NAME_SPECIFIED;
+    public static String MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE;
+    public static String MultiPageTaxonEditor_POST_OP_CALLED;
+    public static String MultiPageTaxonEditor_POST_OP_NOT_ENABLED;
+    public static String MultiPageTaxonEditor_REFRESH_ERROR;
+    public static String MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE;
+    public static String MultiPageTaxonEditor_SAVING_EDITOR;
+    public static String MultiPageTaxonEditor_SAVING_TAXON;
+    public static String MultiPageTaxonEditor_SAVING_TAXON_MESSAGE;
+    public static String MultiPageTaxonEditor_UNSAVED_DATA;
+    public static String MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE;
+    public static String NameEditorDropTargetListener_CHANGE_ACC_TAXON;
+    public static String NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP;
+    public static String NameEditorDropTargetListener_CHANGE;
+    public static String NameEditorDropTargetListener_CHANGE_SYNONYM;
+    public static String NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP;
+    public static String NameEditorDropTargetListener_UNSUCCESSFULL_DROP;
+    public static String OpenChecklistEditorHandler_CHOOSE_AREA;
+    public static String OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE;
+    public static String OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE;
+    public static String OpenChecklistEditorHandler_FAILED_TO_OPEN;
+    public static String OpenChecklistEditorHandler_GOTO_PREFERENCES;
+    public static String OpenChecklistEditorHandler_NO_AREAS;
+    public static String OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR;
+    public static String OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN;
+    public static String OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED;
+    public static String OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND;
+    public static String OpenDerivateViewHandler_COULD_NOT_OPEN;
+    public static String OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS;
+    public static String OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE;
+    public static String OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN;
+    public static String OpenRelatedConceptHandler_COULD_NOT_OPEN;
+    public static String OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE;
+    public static String PolytomousKeyEditorLabels_CREATE_NODE;
+    public static String PolytomousKeyEditorLabels_CREATE_SIBLING;
+    public static String PolytomousKeyEditorLabels_DELETE_NODE;
+    public static String PolytomousKeyEditorLabels_INSERT_NODE;
+    public static String PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE;
+    public static String PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE;
+    public static String PolytomousKeyGraphContentProvider_WRONG_PARENT;
+    public static String PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON;
+    public static String PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET;
+    public static String PolytomousKeyListEditor_EDGE;
+    public static String PolytomousKeyListEditor_LINK;
+    public static String PolytomousKeyListEditor_NODE;
+    public static String PolytomousKeyListEditor_QUESTION;
+    public static String PolytomousKeyListEditor_STATEMENT;
+    public static String PolytomousKeyListEditor_TAXON;
+    public static String PolytomousKeyListItem_NO_STATEMENT;
+    public static String PolytomousKeyListItem_TAXON_EMPTY;
+    public static String RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY;
+    public static String SimpleSelectionProvider_SETTING_SELECTION;
+    public static String SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE;
+    public static String SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE;
+    public static String SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE;
+	public static String UseObjectManager_RESET_DATA;
+    public static String UsesLabelProvider_NO_DATA;
+    public static String UsesLabelProvider_NO_LABEL;
+    public static String UsesLabelProvider_USE;
+    public static String UsesViewPart_VIEWER_NAME;
+    public static String SetSecundumHandler_configureSettings;
+    public static String SetSecundumHandler_confirm;
+    public static String SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN;
+    public static String SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED;
+    public static String SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON;
+    public static String SynonymContainer_SYNONYM_NULL_NAME;
+    public static String TaxonEditorInput_INCORRECT_STATE;
+    public static String TaxonEditorInput_NEW_TAXON;
+    public static String TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT;
+    public static String TaxonEditorInput_NOT_IMPLEMENTED;
+    public static String TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE;
+    public static String TaxonEditorInput_OPEN_MISSAPPLIED_NAME;
+    public static String TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION;
+    public static String TaxonEditorInputFactory_COULD_NOT_CREATE;
+    public static String TaxonEditorInputFactory_NOT_FOUND_TAXON;
+    public static String TaxonNameEditor_INVALID_INPUT;
+    public static String TaxonNameEditor_INVALID_INPUT_TAXON_NULL;
+    public static String TaxonNameEditor_SAVING_COMPOSITES;
+    public static String TaxonNameEditor_SAVING_NAMES;
+    public static String TaxonNameEditor_THERE_SHOULD_ALWAYS_BE;
+    public static String ValidationDaemon_RUNNING_DAEMON;
+    public static String ValidationDaemon_VALIDATION_EXCEPTION;
+    public static String ValidationDaemon_VALIDATION_STOPPED;
+    static {
+        // initialize resource bundle
+        NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+    }
+
+    private Messages() {
+    }
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages.properties b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages.properties
new file mode 100644
index 000000000..93392a788
--- /dev/null
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages.properties
@@ -0,0 +1,231 @@
+CreateDerivateContextMenu_ADD=Add...
+CreateDerivateContextMenu_DNA_SAMPLE=DNA Sample
+CreateDerivateContextMenu_MEDIA=Media...
+CreateDerivateContextMenu_MEDIA_EXISTING=Use existing media item
+CreateDerivateContextMenu_MEDIA_SPECIMEN=Media item
+CreateDerivateContextMenu_NO_CHILD_DERIVATE=No child derivatives
+CreateDerivateContextMenu_SEQUENCE=Consensus Sequence
+CreateDerivateContextMenu_SINGLE_READ=Single Read
+CreateDerivateContextMenu_SPECIMEN=Specimen
+CreateDerivateContextMenu_TISSUE_SAMPLE=Tissue Sample
+CreateFieldUnitContextMenu_CREATE_FIELD_UNIT=Create new field unit
+CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR=Create new field unit for %s
+SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE=Remove from this Sequence
+SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE=Reuse for other Sequence
+SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE=Reuse SingleRead here
+DerivateView_CNT_DERIVATIVES_FOUND=%d derivative hierarchies found
+DerivateView_DERIVATIVE_EDITOR=Specimen Editor
+DerivateView_NO_TAXON_SELECTED=\ [no taxon selected]
+DerivateView_PERF_WARNING=Performance warning
+DerivateView_PERF_WARNING_MESSAGE=Specimens will not be loaded\!\n There are %d specimens associated with the current selection. If you really want to show all of them in the specimen editor please use the taxon filter in the search bar.
+DerivateView_SAVING_HIERARCHY=Saving hierarchy
+DerivateView_SPECIMEN_EDITOR=Specimen Editor
+DerivateView_UNSAVED_CHANGES=View has unsaved changes
+DerivateView_YOU_NEED_TO_SAVE=You need to save before performing this action
+DeleteDerivateOperation_AND_CHILDREN= and its children
+DeleteDerivateOperation_CONFIRM=Confirm Deletion
+DeleteDerivateOperation_DELETE_FAILED=Deletion failed
+DeleteDerivateOperation_REALLY_DELETE=Do you really want to delete the selected element
+DerivateDropListener_MOVE_TO=Moving "%s" to "%s"
+DerivateViewEditorInput_FAIL_INIT=Failed initializing editor
+DerivateViewEditorInput_NO_ROOT=No root element found\!
+MediaViewPart_MEDIA=Media
+MoveDerivateOperation_MOVE_NOT_POSSIBLE=Moving derivatives not possible\!
+MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE=Moving "%s" to "%s" is not possible\!
+MoveDescriptionElementsHandler_CHOOSE_ACC_TAXON=Choose the accepted taxon
+MoveDescriptionElementsHandler_CREATE_FAILURE=Could not create taxon
+MoveDescriptionElementsHandler_ELEMENTS_MOVED=Elements moved from %s
+MoveDescriptionToOtherTaxonHandler_CHOOSE_ACC_TAXON=Choose the accepted taxon
+MoveDescriptionToOtherTaxonHandler_CREATE_FAILED=Could not create Taxon
+MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES=Save changes
+MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES_MESSAGE=You have made changes that must be saved before this query can be executed. Would you like to proceed?
+MoveDescriptionToOtherTaxonOperation_MOVED_FROM=Description moved from %s
+MoveMediaInListOperation_MORE_DESC=More than one description element in this image gallery
+OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR=Could not open Specimen Editor
+OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN=Failed to open Editor
+OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED=The derivative hierarchy is corrupted\!
+OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND=No Derivatives found
+DeleteTaxonBaseHandler_CONFIRM_DELETION=Confirm Deletion
+DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT=Element has to be Synonym, Misapplication or Concept
+DeleteTaxonBaseHandler_REALLY_DELETE_TAXON=Are you sure you want to delete the selected taxon?
+DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM=Are you sure you want to delete the selected synoym, this is irreversible?
+DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=The Synonym could be deleted, but related object(s) could not be deleted
+DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=The misapplied name could be deleted, but related object(s) could not be deleted
+DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION=Are you sure you want to delete the selected misapplication, this is irreversible?
+DescriptionElementDropAdapter_MOVE_DESC=Move Descriptions
+DescriptionElementDropAdapter_NOT_SUPPORTED=Operation not supported yet
+DescriptionElementDropAdapter_NOT_SUPPORTED_EMPTY_ELEMENT=We are unable to drag and drop empty descriptions
+DescriptionElementDropAdapter_NOT_SUPPORTED_NEW_ELEMENT=We are currently unable to drag and drop a newly created element. Please save the editor to make this work.
+DescriptiveViewPart_COLLAPSE_ALL=Collapse All
+DescriptiveViewPart_EXPAND_ALL=Expand All
+DescriptiveViewPart_FACTUAL_DATA=Factual Data
+DescriptiveViewPart_SHOW_ALL_DATA=Show all factual data
+ConceptGraphView_VIEWER_NAME=Concept Graph
+ConceptViewPart_VIEWER_NAME=Concept Relations
+UsesLabelProvider_NO_DATA=No data provided
+UsesLabelProvider_NO_LABEL=No label provided
+UsesLabelProvider_USE=Use: 
+UsesViewPart_VIEWER_NAME=Uses
+SetSecundumHandler_configureSettings=Configure the settings for secundum reference exchange of the subtree
+SetSecundumHandler_confirm=Confirm the exchange of secundum reference
+DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN=Specimen editor could not be opened
+DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN=Could not open taxon editor for taxon/synonym 
+DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN=Could not open taxon editor for taxon node
+OpenChecklistEditorHandler_CHOOSE_AREA=Please choose the areas you want to display. 
+OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE=Could not open Distribution Editor.
+OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE=Could not open Distribution Editor
+OpenChecklistEditorHandler_FAILED_TO_OPEN=Failed to open Editor
+OpenChecklistEditorHandler_GOTO_PREFERENCES=For this go to the preferences, choose the Checklist Editor and choose the areas in the Distribution Selection Wizard.
+OpenChecklistEditorHandler_NO_AREAS=No Areas to display
+OpenDerivateViewHandler_COULD_NOT_OPEN=Specimen editor could not be opened
+DeleteNodeHandler_CANCEL=Cancel
+DeleteNodeHandler_CONFIRM_DELETE=Confirm deletion of children
+DeleteNodeHandler_NO=No
+DeleteNodeHandler_NODE_HAS_CHILDREN=The selected node has children, do you want to delete them, too?
+DeleteNodeHandler_REALLY_DELETE=Do you really want to delete the node. This operation is not reversable.
+DeleteNodeHandler_SAVE_CHANGES_MESSAGE=You have made changes that must be saved before you can delete the node. Would you like to proceed?
+DeleteNodeHandler_SAVE_CHANGES_TITLE=Save changes
+DeleteNodeHandler_YES=Yes
+DeleteNodeOperation_DELETE_FAILED=Exception occured. Delete not possible
+InsertPolytomousKeyNodeOperation_INSERT_KEY=Insert new polytomous key node
+RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY=Create new polytomous key node
+PolytomousKeyEditorLabels_CREATE_NODE=Create Child Polytomous Key Node
+PolytomousKeyEditorLabels_CREATE_SIBLING=Create Sibling Polytomous Key Node
+PolytomousKeyEditorLabels_DELETE_NODE=Delete Polytomous Key Node
+PolytomousKeyEditorLabels_INSERT_NODE=Insert Polytomous Key Node
+PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE=No Key Node Selected.Please right-click on a specific key node to create a new key node.
+PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE=No Key Node Selected.
+PolytomousKeyGraphContentProvider_WRONG_PARENT=Parent element has to be PolytomousKeyNode or PolytomousKey, but was: 
+PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON=leaf but no taxon
+PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET=No node number set
+PolytomousKeyListEditor_EDGE=Edge
+PolytomousKeyListEditor_LINK=Link
+PolytomousKeyListEditor_NODE=Node
+PolytomousKeyListEditor_QUESTION=Question
+PolytomousKeyListEditor_STATEMENT=Statement
+PolytomousKeyListEditor_TAXON=Taxon
+PolytomousKeyListItem_NO_STATEMENT=No statement
+PolytomousKeyListItem_TAXON_EMPTY=Taxon empty
+TaxonNameEditor_INVALID_INPUT=Invalid Input: Must be IEditorInput
+TaxonNameEditor_INVALID_INPUT_TAXON_NULL=Invalid Input: Taxon cannot be null
+TaxonNameEditor_SAVING_COMPOSITES=Saving composite: 
+TaxonNameEditor_SAVING_NAMES=Saving names
+TaxonNameEditor_THERE_SHOULD_ALWAYS_BE=There should always be a selected object.
+ValidationDaemon_RUNNING_DAEMON=Running validation daemon
+ValidationDaemon_VALIDATION_EXCEPTION=Validation module terminated unexpectedly: 
+ValidationDaemon_VALIDATION_STOPPED=Validation module stopped
+ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION=Choose Classification
+ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE=The taxon is part of multiple classification. Please choose the one you want to open.
+EditorStateManager_ERROR_OPEN_WINDOW=Error opening an editor window
+EditorStateManager_REFRESH_EDITOR=Refreshing Editors
+EditorStateManager_RESTORE_EDITORS=Restoring Editors
+EditorUtil_COMFIRM_SAVE=Confirm save
+EditorUtil_CONFIRM_SAVE_MESSAGE=Warning - this operation will save the editor. This will also save all other unsaved changes in your working editor to the database. Please 'Cancel' if you are not ready to do this.
+EditorUtil_ORPHAN_ACCEPTED_TAXON=Orphaned accepted taxon
+EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE=The accepted taxon of this synonym is not part of any classification. Editing with the name editor is currently not implemented. Try to edit the taxon with the bulk editor.
+EditorUtil_ORPHAN_TAXON=Orphaned Taxon
+EditorUtil_ORPHAN_TAXON_MESSAGE=This is an orphaned taxon i.e. a taxon that is not connected to a classification and not having any taxonomic relationships. Editing of orphaned taxa in the name editor is currently not supported. Try editing with the bulk editor
+MultiPageTaxonEditor_INVALID_INPUT=Invalid Input: Must be TaxonEditorInput
+MultiPageTaxonEditor_NEW_TAXON=New taxon
+MultiPageTaxonEditor_NO_NAME_SPECIFIED=No Name Specified
+MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE=An attempt was made to save a taxon or synonym with an empty name. Operation was cancelled.
+MultiPageTaxonEditor_POST_OP_CALLED=postOperation called on MultiPageTaxonEditor. Can you make it more specific?
+MultiPageTaxonEditor_POST_OP_NOT_ENABLED=postOperation not enabled for editor 
+MultiPageTaxonEditor_REFRESH_ERROR=Error refreshing editor
+MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE=Could not refresh this editor
+MultiPageTaxonEditor_SAVING_EDITOR=Saving Editor
+MultiPageTaxonEditor_SAVING_TAXON=saving a taxon
+MultiPageTaxonEditor_SAVING_TAXON_MESSAGE=Please close and reopen the taxon again.
+MultiPageTaxonEditor_UNSAVED_DATA=Editor has unsaved data
+MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE=This editor can not be refreshed because it contains unsaved data. Refreshing this editor would discard the changes. Please save this editor, close and reopen it manually in order to get the latest content
+SimpleSelectionProvider_SETTING_SELECTION=Setting Selection
+TaxonEditorInput_INCORRECT_STATE=Incorrect state
+TaxonEditorInput_NEW_TAXON=New taxon
+TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT=Trying to open accepted taxon for a synonym or misapplication but no accepted taxa are present. This should not have happened.
+TaxonEditorInput_NOT_IMPLEMENTED=Not yet implemented
+TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE=Selected element is not type TaxonBase.
+TaxonEditorInput_OPEN_MISSAPPLIED_NAME=trying to open Mispplied Name 
+TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION=The accepted taxon is not part of any classification. Editing with the name editor is currently not implemented. Try to edit the taxon with the bulk editor.
+TaxonEditorInputFactory_COULD_NOT_CREATE=Could not create element
+TaxonEditorInputFactory_NOT_FOUND_TAXON=Couldn't find taxon node with UUID 
+UseObjectManager_RESET_DATA=Reset usage data
+CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR=Saving CDM Authority Editor
+EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES=Could not open CDM Authority Editor
+EditCdmAuthoritiesHandler_OPEN_AUTHORITIES=Opening Cdm Authorities
+KeyEditor_GRAPH=Graph
+KeyEditor_LIST=List
+KeyEditor_SAVING=Saving Editor
+AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW=This name may only be edited in the details view.
+AbstractGroupedContainer_MULTIPLE_USE=The name of this taxons is used multiple times.
+AbstractGroupedContainer_NEW_HETERO_SYNONYM=New Heterotypic Synonym
+AddDerivedUnitFacadeMediaOperation_CREATE_FAILED=Image gallery creation failed
+AddDerivedUnitFacadeMediaOperation_CREATE_FAILED_MESSAGE=Only one image gallery is possible.
+ConceptContainer_SEC_REQUIRED=This taxon requires a sec. reference.
+EditorAnnotation_ERROR=Error: 
+EditorAnnotation_WARNING=Warning: 
+IContainerConstants_CLICK_ADD_NAME=Click to add name
+MisapplicationContainer_SEC_REF_REQUIRED=This misapplication requires a sec. reference.
+SynonymContainer_SYNONYM_NULL_NAME=Synonym with a null name detected. This should never happen.
+NameEditorDropTargetListener_CHANGE=Change
+NameEditorDropTargetListener_CHANGE_ACC_TAXON=Change accepted Taxon
+NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP=Change Homotypical Group
+NameEditorDropTargetListener_CHANGE_SYNONYM=Change to Synonym
+NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP=Change Synonym to Misapplication
+NameEditorDropTargetListener_UNSUCCESSFULL_DROP=User unsuccessfully tried to drop: %s. Target: %s
+ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON=Change synonym to accepted taxon
+ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE=Could not create Taxon
+ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT=Select parent
+MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON=Change accepted Taxon of Synonym
+MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION=No selection
+MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE=No synonym selected
+MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON=Select new accepted taxon
+SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN=Could not open editor for taxon
+ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED=Not implemented yet. See developer documentation for details
+ChangeConceptToSynonymOperation_MULTI_REPS=Multiple relations between taxa
+ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE=There are multiple relations between the accepted and the related taxon. This case is not handled by the software yet.
+ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA=Operation may lead to inconsistent data
+ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED=Not yet implemented
+SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED=Not yet implemented
+SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON=Swap Synonym And Accepted Taxon Operation
+ChecklistDropdownSelectionListener_ADD_DISTRIBUTION=Add Distribution
+ChecklistEditor_DIST_STATUS=Distribution Status
+ChecklistEditor_DIST_STATUS_TOOLTIP=Show Distribution Status for selected Areas
+ChecklistEditor_ELEMENT_COUNT=Element count: 
+ChecklistEditor_LOAD_CNT_TAXA=Loading %d Taxa...
+ChecklistEditor_LOAD_TAXA=loading Taxa
+ChecklistEditor_NO_AREAS=No Areas to display
+ChecklistEditor_NO_AREAS_MESSAGE=Please choose the areas you want to display. Go to the preferences, choose the Checklist Editor and choose the areas in the Distribution Selection Wizard.
+ChecklistEditor_RANK=Rank
+ChecklistEditor_RETRIEVE_NODES=Retrieving TaxonNodes
+ChecklistEditor_SAVE_EDITOR=Saving Editor
+ChecklistEditor_SEARCH=Search: 
+ChecklistEditor_TAXON=Taxon
+ChecklistEditor_UNKNOWN=unknown
+OpenRelatedConceptHandler_COULD_NOT_OPEN=Could not open taxon
+OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Could not open the taxon: %s
+ListenToSelectionChangeContextMenu_LINK=Link with taxon selection
+ListenToSelectionChangeContextMenu_UNLINK=Unlink from taxon selection
+DeleteDerivateHandler_INVALID_SELECTION=Selection is not valid for this delete handler
+DeleteDescriptionElementOperation_DESC_NOT_FOUND=Couldn't find element's description!
+DeleteHandler_CONFIRM_DELETION=Confirm Deletion
+DeleteHandler_CONFIRM_DELETION_MESSAGE=Do you really want to delete the media?
+DeleteHandler_DELETE=Delete
+DeleteHandler_INVALID_SELECTION=Selection is not valid for this delete handler
+DeleteHandler_SKIP=Skip
+DeleteMediaHandler_CONFIRM=Confirm Deletion
+DeleteMediaHandler_CONFIRM_MESSAGE=Do you really want to delete the media?
+DeleteMediaHandler_DELETE=Delete
+DeleteMediaHandler_SKIP=Skip
+OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS=No specimens found
+OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE=No specimens found for the selected object. (Maybe there are unsaved changes)
+OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN=Specimen editor could not be opened
+DerivateSearchComposite_ALL=All
+DerivateSearchComposite_DERIVATE_TYPE=Derivative Type
+DerivateSearchComposite_NEW_TEXT=New Text
+DerivateSearchComposite_NO=No
+DerivateSearchComposite_SEARCH=Search
+DerivateSearchComposite_TAXON=Taxon
+DerivateSearchComposite_TAXON_ASSIGNMENT=Taxon assignment
+DerivateSearchComposite_TITLE_CACHE=Title Cache
+DerivateSearchComposite_YES=Yes
+DerivateViewEditorInput_SPECIMEN_EDITOR=Specimen Editor
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages_de.properties b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages_de.properties
new file mode 100644
index 000000000..870b8f5a6
--- /dev/null
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages_de.properties
@@ -0,0 +1,231 @@
+CreateDerivateContextMenu_ADD=Hinzufügen...
+CreateDerivateContextMenu_DNA_SAMPLE=DNA Probe
+CreateDerivateContextMenu_MEDIA=Media...
+CreateDerivateContextMenu_MEDIA_EXISTING=Vorhandendes Medienobjekt verwenden
+CreateDerivateContextMenu_MEDIA_SPECIMEN=Medienobjekt
+CreateDerivateContextMenu_NO_CHILD_DERIVATE=Keine Kind-Derivate
+CreateDerivateContextMenu_SEQUENCE=Konsensussequenz
+CreateDerivateContextMenu_SINGLE_READ=Single Read
+CreateDerivateContextMenu_SPECIMEN=Beleg
+CreateDerivateContextMenu_TISSUE_SAMPLE=Gewebeprobe
+CreateFieldUnitContextMenu_CREATE_FIELD_UNIT=Erzeuge neue Field Unit
+CreateFieldUnitContextMenu_CREATE_FIELD_UNIT_FOR=Erzeuge neue Field Unit für %s
+SingleReadSequenceContextMenu_REMOVE_FROM_SEQUENCE=Von Sequenz entfernen
+SingleReadSequenceContextMenu_REUSE_FOR_SEQUENCE=Für andere Sequenz verwenden
+SingleReadSequenceContextMenu_REUSE_SINGLE_READ_HERE=SingleRead hier verwenden
+DerivateView_CNT_DERIVATIVES_FOUND=%d Derivat-Hierarchien gefunden
+DerivateView_DERIVATIVE_EDITOR=Specimen-Editor
+DerivateView_NO_TAXON_SELECTED=\ [kein Taxon ausgewählt]
+DerivateView_PERF_WARNING=Performance-Warnung
+DerivateView_PERF_WARNING_MESSAGE=Specimens werden nicht geladen\!\n Es gibt %d Specimens für die aktuelle Auswahl. Wenn wirklich alle Specimens im Specimen-Editor angezeigt werden sollen, dann nutzen Sie bitte den Taxon-Filter in der Suchleiste.
+DerivateView_SAVING_HIERARCHY=Speichere Hierarchie
+DerivateView_SPECIMEN_EDITOR=Specimen-Editor
+DerivateView_UNSAVED_CHANGES=Ungepeicherte Änderungen
+DerivateView_YOU_NEED_TO_SAVE=Sie müssen speichern, um diese Aktion auszuführen
+DeleteDerivateOperation_AND_CHILDREN= (mit Kind-Elementen)
+DeleteDerivateOperation_CONFIRM=Löschen bestätigen
+DeleteDerivateOperation_DELETE_FAILED=Löschen fehlgeschlagen
+DeleteDerivateOperation_REALLY_DELETE=Wollen Sie wirklich das ausgewählte Element löschen
+DerivateDropListener_MOVE_TO=Verschiebe "%s" nach "%s"
+DerivateViewEditorInput_FAIL_INIT=Initialisierung des Editor fehlgeschlagen
+DerivateViewEditorInput_NO_ROOT=Kein Root-Element gefunden\!
+MediaViewPart_MEDIA=Media
+MoveDerivateOperation_MOVE_NOT_POSSIBLE=Verschieben von Derivaten nicht möglich\!
+MoveDerivateOperation_MOVE_TO_NOT_POSSIBLE=Verschieben von "%s" nach "%s" nicht möglich\!
+MoveDescriptionElementsHandler_CHOOSE_ACC_TAXON=Wähle akzeptiertes Taxon
+MoveDescriptionElementsHandler_CREATE_FAILURE=Konnte Taxon nicht erstellen
+MoveDescriptionElementsHandler_ELEMENTS_MOVED=Elemente verschoben von %s
+MoveDescriptionToOtherTaxonHandler_CHOOSE_ACC_TAXON=Wähle akzeptiertes Taxon
+MoveDescriptionToOtherTaxonHandler_CREATE_FAILED=Konnte Taxon nicht erstellen
+MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES=Änderungen speichern
+MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES_MESSAGE=Änderungen müssen gespeichert werden, bevor die Anfrage ausgeführt werden kann. Fortfahren?
+MoveDescriptionToOtherTaxonOperation_MOVED_FROM=Beschreibung verschoben von %s
+MoveMediaInListOperation_MORE_DESC=Mehr als eine Beschreibung in dieser Bildergalerie
+OpenDerivateEditorForTaxonHandler_COULD_NOT_OPEN_EDITOR=Konnte Specimen-Editor nicht öffnen
+OpenDerivateEditorForTaxonHandler_FAILED_TO_OPEN=Öffnen des Editors fehlgeschlagen
+OpenDerivateEditorForTaxonHandler_HIERARCHY_CORRUPTED=Die Derivathierarchie ist korrumpiert\!
+OpenDerivateEditorForTaxonHandler_NO_DERIVATIVES_FOUND=Keine Derivate gefunden
+DeleteTaxonBaseHandler_CONFIRM_DELETION=Löschen bestätigen
+DeleteTaxonBaseHandler_ELEMENT_MUST_BE_SYNONYM_MISAPP_CONCEPT=Element muss Synonym, Misapplikation oder Konzept sein
+DeleteTaxonBaseHandler_REALLY_DELETE_TAXON=Wollen Sie wirklich das ausgewählte Taxon löschen?
+DeleteTaxonBaseHandler_REALLY_DELETE_SYNONYM=Wollen Sie das ausgewählte Synonym wirklich löschen, dieser Vorgang ist nicht reversibel.
+DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=Das Synonym konnte gelöscht werden, aber es gibt noch verknüpfte Objekte, die nicht gelöscht werden konnten.
+DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS=Die Misapplikation konnte gelöscht werden, aber es gibt noch verknüpfte Objekte, die nicht gelöscht werden konnten.
+DeleteTaxonBaseHandler_REALLY_DELETE_MISAPPLICATION=Wollen Sie die ausgewählte Misapplikation wirklich löschen, dieser Vorgang ist nicht reversibel.
+DescriptionElementDropAdapter_MOVE_DESC=Verschiebe Beschreibungen
+DescriptionElementDropAdapter_NOT_SUPPORTED=Vorgang noch nicht unterstützt
+DescriptionElementDropAdapter_NOT_SUPPORTED_EMPTY_ELEMENT=Drag and Drop für leeren Beschreibungen noch nicht unterstützt
+DescriptionElementDropAdapter_NOT_SUPPORTED_NEW_ELEMENT=Drag and Drop für neu erstellte Elemente noch nicht unterstützt. Bitte Editor speichern, um den Vorgang auszuführen.
+DescriptiveViewPart_COLLAPSE_ALL=Alles einklappen
+DescriptiveViewPart_EXPAND_ALL=Alles ausklappen
+DescriptiveViewPart_FACTUAL_DATA=Faktendaten
+DescriptiveViewPart_SHOW_ALL_DATA=Zeige alle Faktendaten
+ConceptGraphView_VIEWER_NAME=Konzeptgraph
+ConceptViewPart_VIEWER_NAME=Konzeptrelationen
+UsesLabelProvider_NO_DATA=Keine Daten verfügbar
+UsesLabelProvider_NO_LABEL=Kein Label verfügbar
+UsesLabelProvider_USE=Nutzung: 
+UsesViewPart_VIEWER_NAME=Nutzung
+SetSecundumHandler_configureSettings=Konfigurieren Sie das Ersetzen der Secundum Referenz für den ausgewählten Teilbaum.
+SetSecundumHandler_confirm=Ersetzen der Secundum Referenz bestätigen
+DefaultOpenSpecimenEditorForTypeSpecimenHandler_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden
+DefaultOpenTaxonEditorForTaxonBaseHandler_COULD_NOT_OPEN=Taxon-Editor für Taxon/Synonym konnte nicht geöffnet werden
+DefaultOpenTaxonEditorForTaxonNodeHandler_COULD_NOT_OPEN=Taxon-Editor für Taxonknoten konnte nicht geöffnet werden 
+OpenChecklistEditorHandler_CHOOSE_AREA=Bitte wählen Sie das Gebiet aus, das dargestellt werden soll
+OpenChecklistEditorHandler_COULD_NOT_OPEN_MESSAGE=Der Verbreitungs-Editor konnte nicht geöffnet werden
+OpenChecklistEditorHandler_COULD_NOT_OPEN_TITLE=Der Verbreitungs-Editor konnte nicht geöffnet werden
+OpenChecklistEditorHandler_FAILED_TO_OPEN=Der Editor konnte nicht geöffnet werden
+OpenChecklistEditorHandler_GOTO_PREFERENCES=Hierfür gehen Sie zu den Preferences, wählen Sie Checklist Editor und dann die Gebiete in dem Verbreitungs-Wizard.
+OpenChecklistEditorHandler_NO_AREAS=Keine Gebiete, die angezeigt werden können
+OpenDerivateViewHandler_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden.
+DeleteNodeHandler_CANCEL=Abbrechen
+DeleteNodeHandler_CONFIRM_DELETE=Löschen der Kindknoten bestätigen
+DeleteNodeHandler_NO=Nein
+DeleteNodeHandler_NODE_HAS_CHILDREN=Der ausgewählte Knoten hat Kindknoten. Sollen diese auch gelöscht werden?
+DeleteNodeHandler_REALLY_DELETE=Wollen Sie wirklich den Knoten löschen? Diese Operation ist nicht rückgängig zu machen.
+DeleteNodeHandler_SAVE_CHANGES_MESSAGE=Sie haben ungespeicherte Änderungen, die vor dem Löschen des Knotens gespeichert werden müssen. Wollen Sie fortfahren?
+DeleteNodeHandler_SAVE_CHANGES_TITLE=Änderungen speichern
+DeleteNodeHandler_YES=Ja
+DeleteNodeOperation_DELETE_FAILED=Ein Fehler ist aufgetreten. Löschen nicht möglich
+InsertPolytomousKeyNodeOperation_INSERT_KEY=Neuen polytomen Bestimmungsschlüssel einfügen
+RemotingCreatePolytomousKeyNodeOperation_CREATE_KEY=Neuen polytomen Bestimmungsschlüssel anlegen
+PolytomousKeyEditorLabels_CREATE_NODE=Neuen polytomen Bestimmungsschlüssel anlegen
+PolytomousKeyEditorLabels_CREATE_SIBLING=Neuen polytomen Bestimmungsschlüssel anlegen
+PolytomousKeyEditorLabels_DELETE_NODE=Polytomen Bestimmungsschlüssel löschen
+PolytomousKeyEditorLabels_INSERT_NODE=Polytomen Bestimmungsschlüssel einfügen
+PolytomousKeyEditorLabels_NO_NODE_SELECTED_MESSAGE=Kein Schlüssel ausgewählt. Um einen Schlüssel anzulegen, bitte auf einen ausgewählten Schlüssel einen Rechts-Klick ausführen.
+PolytomousKeyEditorLabels_NO_NODE_SELECTED_TITLE=Kein Schlüssel ausgewählt.
+PolytomousKeyGraphContentProvider_WRONG_PARENT=Der Elternknoten muss ein PolytomousKeyNode oder PolytomousKey sein, war aber: 
+PolytomousKeyLabelProvider_LEAF_BUT_NO_TAXON=leaf but no taxon
+PolytomousKeyLabelProvider_NO_NODE_NUMBER_SET=Keine Knotennummer angegeben
+PolytomousKeyListEditor_EDGE=Edge
+PolytomousKeyListEditor_LINK=Link
+PolytomousKeyListEditor_NODE=Node
+PolytomousKeyListEditor_QUESTION=Question
+PolytomousKeyListEditor_STATEMENT=Statement
+PolytomousKeyListEditor_TAXON=Taxon
+PolytomousKeyListItem_NO_STATEMENT=No statement
+PolytomousKeyListItem_TAXON_EMPTY=Taxon leer
+TaxonNameEditor_INVALID_INPUT=Ungültige Eingabe: Muss IEditorInput sein
+TaxonNameEditor_INVALID_INPUT_TAXON_NULL=Ungültige Eingabe: Taxon darf nicht null sein
+TaxonNameEditor_SAVING_COMPOSITES=Speichere Composites: 
+TaxonNameEditor_SAVING_NAMES=Speichere Namen 
+TaxonNameEditor_THERE_SHOULD_ALWAYS_BE=Es muss immer ein Objekt ausgewählt sein.
+ValidationDaemon_RUNNING_DAEMON=Validation daemon läuft
+ValidationDaemon_VALIDATION_EXCEPTION=Validation-Modul wurde unerwartet beendet: 
+ValidationDaemon_VALIDATION_STOPPED=Validation-Modul angehalten
+ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION=Klassifiaktion wählen
+ChooseFromMultipleTaxonNodesDialog_CHOOSE_CLASSIFICATION_MESSAGE=Das Taxon ist in mehreren Klassifikationen vorhanden. Bitte wählen sie, welche sie öffnen möchten.
+EditorStateManager_ERROR_OPEN_WINDOW=Fehler beim Öffnen des Editors
+EditorStateManager_REFRESH_EDITOR=Aktualisiere Editor
+EditorStateManager_RESTORE_EDITORS=Editor wird wiederhergestellt
+EditorUtil_COMFIRM_SAVE=Speichern bestätigen
+EditorUtil_CONFIRM_SAVE_MESSAGE=Warnung - Diese Operation wird den Editor speichern. Ebenso werden alle weiteren ungespeicherten Änderungen gespeichert. Um das zu verhindern, drücken Sie 'Abbrechen'.
+EditorUtil_ORPHAN_ACCEPTED_TAXON=Verwaistes akzeptiertes Taxon
+EditorUtil_ORPHAN_ACCEPTED_TAXON_MESSAGE=Das akzeptierte Taxon dieses Synonyms ist in keiner Klassifikation vorhanden. Editieren mit dem Namens-Editor ist noch nicht implementiert. Benutzen Sie den Bulk-Editor.
+EditorUtil_ORPHAN_TAXON=Verwaistes Taxon
+EditorUtil_ORPHAN_TAXON_MESSAGE=Dies ist ein verwaistes Taxon d.h. ein Taxon, welches in keiner Klassifikation vorhanden ist und keine Taxonverknüpfungen hat. Editieren von verwaisten Taxa im Namens-Editor ist noch nicht implementiert. Benutzen Sie den Bulk-Editor.
+MultiPageTaxonEditor_INVALID_INPUT=Ungültiger Input: Muss TaxonEditorInput sein
+MultiPageTaxonEditor_NEW_TAXON=Neues Taxon
+MultiPageTaxonEditor_NO_NAME_SPECIFIED=Kein Name angegeben
+MultiPageTaxonEditor_NO_NAME_SPECIFIED_MESSAGE=Es wurde versucht ein Taxon oder Synonym mit einem leeren Namen zu speichern. Vorgang abgebrochen.
+MultiPageTaxonEditor_POST_OP_CALLED=postOperation called on MultiPageTaxonEditor. Can you make it more specific?
+MultiPageTaxonEditor_POST_OP_NOT_ENABLED=postOperation not enabled for editor 
+MultiPageTaxonEditor_REFRESH_ERROR=Fehler beim Aktualisieren des Editors
+MultiPageTaxonEditor_REFRESH_ERROR_MESSAGE=Konnte Editor nicht aktualisieren
+MultiPageTaxonEditor_SAVING_EDITOR=Speichere Editor
+MultiPageTaxonEditor_SAVING_TAXON=Speichere Taxon
+MultiPageTaxonEditor_SAVING_TAXON_MESSAGE=Bitte Taxon schließen und erneut öffnen.
+MultiPageTaxonEditor_UNSAVED_DATA=Editor hat ungespeicherte Änderungen
+MultiPageTaxonEditor_UNSAVED_DATA_MESSAGE=Der Editor kann nicht aktualisiert werden, weil es ungespeicherte Änderungen gibt. Aktualisieren würde diese Änderungen verwerfen. Bitte den Editor speichern, schließen und wieder öffnen, um den Inhalt zu aktualisieren.
+SimpleSelectionProvider_SETTING_SELECTION=Auswahl setzen
+TaxonEditorInput_INCORRECT_STATE=Ungültiger Zustand
+TaxonEditorInput_NEW_TAXON=Neues Taxon
+TaxonEditorInput_NO_ACCEPTED_TAXON_PRESENT=Öffnen eins akzeptierten Taxons für ein Synonym oder eine Misapplikation, aber kein akzeptiertes Taxon gefunden. Das sollte nicht passieren.
+TaxonEditorInput_NOT_IMPLEMENTED=Noch nicht implementiert
+TaxonEditorInput_NOT_IMPLEMENTED_MESSAGE=Ausgewähltes Element ist nicht vom Typ TaxonBase.
+TaxonEditorInput_OPEN_MISSAPPLIED_NAME=Öffnen einer Misapplikation 
+TaxonEditorInput_TAXON_NOT_IN_CLASSIFICATION=Das akzeptierte Taxon ist in keiner Klassifikation vorhanden. Editieren mit dem Namens-Editor ist noch nicht implementier. Benutzen Sie den Bulk-Editor.
+TaxonEditorInputFactory_COULD_NOT_CREATE=Element konnte nicht erstellt werden
+TaxonEditorInputFactory_NOT_FOUND_TAXON=Konnte Taxonknoten nicht finden. UUID 
+UseObjectManager_RESET_DATA=Wiederherstellen der Nutzugsdaten
+CdmAuthorityEditor_SAVING_AUTHORITY_EDITOR=Speichere CDM Authority Editor
+EditCdmAuthoritiesHandler_COULD_NOT_OPEN_AUTHORITIES=Konnte CDM-Authority-Editor nicht öffnen
+EditCdmAuthoritiesHandler_OPEN_AUTHORITIES=Öffne Cdm-Authorities
+KeyEditor_GRAPH=Graph
+KeyEditor_LIST=Liste
+KeyEditor_SAVING=Speichere Editor
+AbstractGroupedContainer_EDIT_IN_DETAILS_VIEW=Diser Name kann nur im Details-View bearbeitet werden.
+AbstractGroupedContainer_MULTIPLE_USE=Dieser Taxonname wird mehrfach verwendet.
+AbstractGroupedContainer_NEW_HETERO_SYNONYM=Neues heterotypisches Synonym
+ConceptContainer_SEC_REQUIRED=Dieses Taxon benötigt eine sec. Referenz.
+EditorAnnotation_ERROR=Error: 
+EditorAnnotation_WARNING=Warunung: 
+AddDerivedUnitFacadeMediaOperation_CREATE_FAILED=Erstellen der Bildergallerie fehlgeschlagen
+AddDerivedUnitFacadeMediaOperation_CREATE_FAILED_MESSAGE=Nur eine Bildergalerie möglich.
+IContainerConstants_CLICK_ADD_NAME=Klicken, um Namen hinzuzufügen
+MisapplicationContainer_SEC_REF_REQUIRED=Diese Misapplikation benötigt eine sec. Referenz.
+SynonymContainer_SYNONYM_NULL_NAME=Synonym mit einem null-Namen entdeckt. Das sollte nicht passieren.
+NameEditorDropTargetListener_CHANGE=Ändern
+NameEditorDropTargetListener_CHANGE_ACC_TAXON=Ändere akzeptiertes Taxon
+NameEditorDropTargetListener_CHANGE_HOMOTYPICAL_GROUP=Ändere homotypische Gruppe
+NameEditorDropTargetListener_CHANGE_SYNONYM=Ändere in Synonym
+NameEditorDropTargetListener_CHANGE_SYNONYM_TO_MISAPP=Ändere Synonym in Misapplikation
+NameEditorDropTargetListener_UNSUCCESSFULL_DROP=Das Ziehen von %s auf %s war nicht erfolgreich.
+ChangeSynonymToAcceptedTaxonHandler_CHANGE_SYN_TO_ACC_TAXON=Ändere Synonym in akzeptiertes Taxon
+ChangeSynonymToAcceptedTaxonHandler_CREATE_FAILURE=Konnte Taxon nicht erstellen
+ChangeSynonymToAcceptedTaxonHandler_SELECT_PARENT=Wähle Elternelement
+MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON=Ändere akzeptiertes Taxon des Synonyms
+MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION=Keine Auswahl
+MoveSynonymToAnotherAcceptedTaxonHandler_NO_SELECTION_MESSAGE=Kein Synonym ausgewählt
+MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON=Wähle neues akzeptiertes Taxon
+SwapSynonymAndAcceptedHandler_COULD_NOT_OPEN=Konnte Editor für Taxon nicht öffnen
+ChangeConceptRelationshipTypeOperation_NOT_IMPLEMENTED=Noch nicht implementiert. Für Details bitte in die Entwickler-Dokumentation schauen
+ChangeConceptToSynonymOperation_MULTI_REPS=Mehrere Verknüpfungen zwischen Taxa
+ChangeConceptToSynonymOperation_MULTI_REPS_MESSAGE=Es gibt mehrere Verknüpfungen zwischen dem akzeptierten und dem verknüpften Taxon. Dieser Fall wird noch nicht von der Software unterstützt.
+ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA=Vorgang kann zu inkonsistenten Daten führen
+ChangeSynonymToAcceptedTaxonOperation_NOT_IMPLEMENTED=Noch nicht implementiert
+SwapSynonymAndAcceptedOperation_NOT_IMPLEMENTED=Noch nicht implementiert
+SwapSynonymAndAcceptedOperation_SWAP_SYN_ACC_TAXON=Tausche Synonym und akzeptiertes Taxon
+ChecklistDropdownSelectionListener_ADD_DISTRIBUTION=Verbreitung hinzufügen
+ChecklistEditor_DIST_STATUS=Verbreitungsstatus
+ChecklistEditor_DIST_STATUS_TOOLTIP=Zeige den Verbreitungsstatus für die ausgewählten Gebiete
+ChecklistEditor_ELEMENT_COUNT=Anzahl der Elemente: 
+ChecklistEditor_LOAD_CNT_TAXA=Lade %d Taxa...
+ChecklistEditor_LOAD_TAXA=Lade Taxa
+ChecklistEditor_NO_AREAS=Keine Gebiete zum Anzeigen
+ChecklistEditor_NO_AREAS_MESSAGE=Bitte wählen Sie die Gebiete, die sie anzeigen möchten. Unter Einstellungen->Checklist-Editor lassen sich die Gebiete mit dem Verbreitungs-Wizard auswählen.
+ChecklistEditor_RANK=Rang
+ChecklistEditor_RETRIEVE_NODES=Lade Taxonknoten
+ChecklistEditor_SAVE_EDITOR=Speichere Editor
+ChecklistEditor_SEARCH=Suche: 
+ChecklistEditor_TAXON=Taxon
+ChecklistEditor_UNKNOWN=unbekannt
+OpenRelatedConceptHandler_COULD_NOT_OPEN=Konnte Taxon nicht öffnen
+OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Konnte Taxon nicht öffnen: %s
+ListenToSelectionChangeContextMenu_LINK=Verknüpfe mit Taxonauswahl
+ListenToSelectionChangeContextMenu_UNLINK=Verknüpfung mit Taxonauswahl aufheben
+DeleteDerivateHandler_INVALID_SELECTION=Auswahl ungültig
+OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS=Keine Specimens gefunden
+OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE=Keine Specimens für die Auswahl. (Gibt es vielleicht noch ungespeicherte Änderungen?)
+OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden
+DeleteDescriptionElementOperation_DESC_NOT_FOUND=Beschreibung konnte nicht gefunden werden!
+DeleteHandler_CONFIRM_DELETION=Löschen bestätigen
+DeleteHandler_CONFIRM_DELETION_MESSAGE=Wollen sie wirklich das Medienobjektlöschen?
+DeleteHandler_DELETE=Löschen
+DeleteHandler_INVALID_SELECTION=Auswahl ungültig für den DeleteHandler
+DeleteHandler_SKIP=Überspringen
+DeleteMediaHandler_CONFIRM=Löschen bestätigen
+DeleteMediaHandler_CONFIRM_MESSAGE=Wollen sie wirklich das Medienobjektlöschen?
+DeleteMediaHandler_DELETE=Löschen
+DeleteMediaHandler_SKIP=Überspringen
+DerivateSearchComposite_ALL=Alle
+DerivateSearchComposite_DERIVATE_TYPE=Derivat-Typ
+DerivateSearchComposite_NEW_TEXT=Neuer Text
+DerivateSearchComposite_NO=Nein
+DerivateSearchComposite_SEARCH=Suche
+DerivateSearchComposite_TAXON=Taxon
+DerivateSearchComposite_TAXON_ASSIGNMENT=Taxonbestimmung
+DerivateSearchComposite_TITLE_CACHE=Titlecache
+DerivateSearchComposite_YES=Ja
+DerivateViewEditorInput_SPECIMEN_EDITOR=Specimen-Editor
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java
index 96dca057e..6154ad848 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java
@@ -55,10 +55,10 @@ import eu.etaxonomy.taxeditor.editor.CdmDataTransfer;
 import eu.etaxonomy.taxeditor.editor.IDropTargetable;
 import eu.etaxonomy.taxeditor.editor.IMultiPageTaxonEditorPage;
 import eu.etaxonomy.taxeditor.editor.ISecuredEditor;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.SimpleSelectionProvider;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractGroup;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractGroupedContainer;
 import eu.etaxonomy.taxeditor.editor.name.container.AcceptedGroup;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java
index e72de496b..110571ee2 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java
@@ -56,7 +56,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.strategy.parser.ParserProblem;
 import eu.etaxonomy.taxeditor.editor.CdmDataTransfer;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.editor.name.container.EditorAnnotation.EditorAnnotationType;
 import eu.etaxonomy.taxeditor.editor.name.dnd.NameEditorDragListener;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/ConceptContainer.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/ConceptContainer.java
index 333647fbe..e1fccf3e7 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/ConceptContainer.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/ConceptContainer.java
@@ -15,7 +15,7 @@ import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.preference.Resources;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/EditorAnnotation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/EditorAnnotation.java
index b5ecc8d62..3cfad1f75 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/EditorAnnotation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/EditorAnnotation.java
@@ -13,7 +13,7 @@ import org.eclipse.swt.graphics.Rectangle;
 import org.eclipse.swt.widgets.Canvas;
 
 import eu.etaxonomy.cdm.strategy.parser.ParserProblem;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.ImageResources;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/IContainerConstants.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/IContainerConstants.java
index 619909a7a..567dfa71c 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/IContainerConstants.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/IContainerConstants.java
@@ -11,7 +11,7 @@ package eu.etaxonomy.taxeditor.editor.name.container;
 
 import org.eclipse.swt.graphics.Image;
 
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.ImageResources;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/MisapplicationContainer.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/MisapplicationContainer.java
index 38ecc3281..6c8e0d471 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/MisapplicationContainer.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/MisapplicationContainer.java
@@ -13,7 +13,7 @@ import org.eclipse.swt.graphics.Font;
 
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.preference.Resources;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/SynonymContainer.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/SynonymContainer.java
index 1cd230d1b..6afab5410 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/SynonymContainer.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/SynonymContainer.java
@@ -20,7 +20,7 @@ import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.preference.Resources;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/dnd/NameEditorDropTargetListener.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/dnd/NameEditorDropTargetListener.java
index 534001efb..926782adc 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/dnd/NameEditorDropTargetListener.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/dnd/NameEditorDropTargetListener.java
@@ -16,7 +16,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 import eu.etaxonomy.taxeditor.editor.IDropTargetable;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractHomotypicalGroupContainer;
 import eu.etaxonomy.taxeditor.editor.name.container.MisappliedGroup;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/ChangeSynonymToAcceptedTaxonHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/ChangeSynonymToAcceptedTaxonHandler.java
index 6e32a28eb..aedd5f43a 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/ChangeSynonymToAcceptedTaxonHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/ChangeSynonymToAcceptedTaxonHandler.java
@@ -32,9 +32,9 @@ import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.operation.ChangeSynonymToAcceptedTaxonOperation;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/DeleteTaxonBaseHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/DeleteTaxonBaseHandler.java
index e2ba8a543..450d871c0 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/DeleteTaxonBaseHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/DeleteTaxonBaseHandler.java
@@ -23,9 +23,9 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.Page;
 import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.editor.name.operation.DeleteMisapplicationOperation;
 import eu.etaxonomy.taxeditor.editor.name.operation.DeleteSynonymOperation;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/MoveSynonymToAnotherAcceptedTaxonHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/MoveSynonymToAnotherAcceptedTaxonHandler.java
index 06bacdf4a..0a56c3cc8 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/MoveSynonymToAnotherAcceptedTaxonHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/MoveSynonymToAnotherAcceptedTaxonHandler.java
@@ -18,9 +18,9 @@ import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.operation.MoveSynonymToAnotherAcceptedTaxonOperation;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/SwapSynonymAndAcceptedHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/SwapSynonymAndAcceptedHandler.java
index 9a9288b5f..17e412612 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/SwapSynonymAndAcceptedHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/SwapSynonymAndAcceptedHandler.java
@@ -23,8 +23,8 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.operation.SwapSynonymAndAcceptedOperation;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptRelationshipTypeOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptRelationshipTypeOperation.java
index 0fd5f5956..cf39304e5 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptRelationshipTypeOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptRelationshipTypeOperation.java
@@ -20,7 +20,7 @@ import org.eclipse.core.runtime.IStatus;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptToSynonymOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptToSynonymOperation.java
index b8e9e9af9..9f6cec437 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptToSynonymOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptToSynonymOperation.java
@@ -25,7 +25,7 @@ import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToAcceptedTaxonOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToAcceptedTaxonOperation.java
index 943b58eee..165c1ca54 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToAcceptedTaxonOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToAcceptedTaxonOperation.java
@@ -25,7 +25,7 @@ import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPersistentPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperation.java
index 65afdb2cd..e458e8110 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperation.java
@@ -20,7 +20,7 @@ import eu.etaxonomy.cdm.api.service.UpdateResult;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/validation/ValidationDaemon.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/validation/ValidationDaemon.java
index 763cf866a..2cf683edf 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/validation/ValidationDaemon.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/validation/ValidationDaemon.java
@@ -10,7 +10,7 @@ import org.eclipse.core.runtime.jobs.Job;
 
 import eu.etaxonomy.cdm.api.service.IEntityValidationService;
 import eu.etaxonomy.cdm.model.validation.EntityValidation;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/ChecklistEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/ChecklistEditor.java
index a2218df73..aa6329c3e 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/ChecklistEditor.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/ChecklistEditor.java
@@ -62,8 +62,8 @@ import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.SimpleSelectionProvider;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.checklist.edit.DistributionEditingSupport;
 import eu.etaxonomy.taxeditor.editor.view.checklist.filter.ChecklistEditorFilter;
 import eu.etaxonomy.taxeditor.editor.view.checklist.listener.ChecklistDropdownSelectionListener;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/listener/ChecklistDropdownSelectionListener.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/listener/ChecklistDropdownSelectionListener.java
index 083179f68..bbf7b848c 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/listener/ChecklistDropdownSelectionListener.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/checklist/listener/ChecklistDropdownSelectionListener.java
@@ -17,7 +17,7 @@ import org.eclipse.swt.widgets.TableColumn;
 import org.eclipse.swt.widgets.ToolItem;
 
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.preference.wizard.AvailableDistributionWizard;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java
index 1e10712f4..79e9985d3 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java
@@ -30,10 +30,10 @@ import org.eclipse.ui.IWorkbenchPart;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
 import eu.etaxonomy.taxeditor.editor.key.AbstractGraphKeyEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
 import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java
index 2866751df..3ad4d3e84 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java
@@ -19,8 +19,8 @@ import org.eclipse.zest.layouts.algorithms.TreeLayoutAlgorithm;
 
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java
index 8426ccc2f..cd7b8a679 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java
@@ -22,8 +22,8 @@ import org.eclipse.ui.handlers.HandlerUtil;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 
 /**
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDropListener.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDropListener.java
index 7b8664bad..a38272e98 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDropListener.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDropListener.java
@@ -17,7 +17,7 @@ import org.eclipse.swt.dnd.DropTargetEvent;
 import org.eclipse.swt.dnd.TransferData;
 
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.operation.MoveDerivateOperation;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
index 702ddb5d8..605da7724 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
@@ -52,8 +52,8 @@ import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.searchFilter.DerivateSearchCompositeController;
 import eu.etaxonomy.taxeditor.model.IContextListener;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
@@ -76,27 +76,27 @@ import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
 public class DerivateView extends EditorPart implements IPartContentHasFactualData, IConversationEnabled,
         ICdmEntitySessionEnabled, IDirtyMarkable, IPostOperationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, IPartContentHasMedia,
         IContextListener, ISelectionListener {
-    private static final String SPECIMEN_EDITOR = "Specimen Editor";
+    private static final String SPECIMEN_EDITOR = Messages.DerivateView_SPECIMEN_EDITOR;
 
-    public static final String ID = "eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView";
+    public static final String ID = "eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView"; //$NON-NLS-1$
 
     public static final String YOU_NEED_TO_SAVE_BEFORE_PERFORMING_THIS_ACTION = Messages.DerivateView_YOU_NEED_TO_SAVE;
     public static final String VIEW_HAS_UNSAVED_CHANGES = Messages.DerivateView_UNSAVED_CHANGES;
 
     private static final List<String> SPECIMEN_INIT_STRATEGY = Arrays.asList(new String[] {
-            "descriptions",
-            "annotations",
-            "markers",
-            "credits",
-            "extensions",
-            "rights",
-            "sources",
-            "derivationEvents.derivatives.annotations",
-            "derivationEvents.derivatives.markers",
-            "derivationEvents.derivatives.credits",
-            "derivationEvents.derivatives.extensions",
-            "derivationEvents.derivatives.rights",
-            "derivationEvents.derivatives.sources"
+            "descriptions", //$NON-NLS-1$
+            "annotations", //$NON-NLS-1$
+            "markers", //$NON-NLS-1$
+            "credits", //$NON-NLS-1$
+            "extensions", //$NON-NLS-1$
+            "rights", //$NON-NLS-1$
+            "sources", //$NON-NLS-1$
+            "derivationEvents.derivatives.annotations", //$NON-NLS-1$
+            "derivationEvents.derivatives.markers", //$NON-NLS-1$
+            "derivationEvents.derivatives.credits", //$NON-NLS-1$
+            "derivationEvents.derivatives.extensions", //$NON-NLS-1$
+            "derivationEvents.derivatives.rights", //$NON-NLS-1$
+            "derivationEvents.derivatives.sources" //$NON-NLS-1$
     });
 
 	private static final int WARN_THRESHOLD = 200;
@@ -256,7 +256,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         //set taxon filter
         derivateSearchCompositeController.setTaxonFilter(((DerivateViewEditorInput) getEditorInput()).getTaxonUuid());
         //reset status bar
-        getEditorSite().getActionBars().getStatusLineManager().setMessage("");
+        getEditorSite().getActionBars().getStatusLineManager().setMessage(""); //$NON-NLS-1$
 
         //add drag'n'drop support
         Transfer[] transfers = new Transfer[] {LocalSelectionTransfer.getTransfer(),};
@@ -325,7 +325,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
             labelProvider.updateLabelCache(rootElements);
             viewer.setInput(rootElements);
 
-            getEditorSite().getActionBars().getStatusLineManager().setMessage(String.format("%d derivative hierarchies found", rootElements.size()));
+            getEditorSite().getActionBars().getStatusLineManager().setMessage(String.format(Messages.DerivateView_CNT_DERIVATIVES_FOUND, rootElements.size()));
 
             //set selection to derivatives if the filter criteria
             //taxon assignment or derivative type are set
@@ -431,14 +431,14 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
     @Override
     public Map<Object, List<String>> getPropertyPathsMap() {
         List<String> specimenPropertyPaths = Arrays.asList(new String[] {
-                "descriptions",
-                "derivationEvents.derivates",
-                "annotations",
-                "markers",
-                "credits",
-                "extensions",
-                "rights",
-                "sources"
+                "descriptions", //$NON-NLS-1$
+                "derivationEvents.derivates", //$NON-NLS-1$
+                "annotations", //$NON-NLS-1$
+                "markers", //$NON-NLS-1$
+                "credits", //$NON-NLS-1$
+                "extensions", //$NON-NLS-1$
+                "rights", //$NON-NLS-1$
+                "sources" //$NON-NLS-1$
         });
         Map<Object, List<String>> specimenPropertyPathMap =
                 new HashMap<Object, List<String>>();
@@ -560,7 +560,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
                 }
                 checkWarnThreshold(uuids);
                 updateRootEntities(uuids);
-                setPartName(SPECIMEN_EDITOR+": " + selectedTaxon.getName());
+                setPartName(SPECIMEN_EDITOR+": " + selectedTaxon.getName()); //$NON-NLS-1$
             }
         }
     }
@@ -581,7 +581,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
 
 	private void checkWarnThreshold(Collection<UUID> uuids) {
 		if(uuids!=null && uuids.size()>WARN_THRESHOLD){
-			MessagingUtils.warningDialog("Performance warning", this.getClass(), String.format("Specimens will not be loaded!\n There are %d specimens associated with the current selection. If you really want to show all of them in the specimen editor please use the taxon filter in the search bar.", uuids.size()));
+			MessagingUtils.warningDialog(Messages.DerivateView_PERF_WARNING, this.getClass(), String.format(Messages.DerivateView_PERF_WARNING_MESSAGE, uuids.size()));
 			uuids.clear();
 		}
 	}
@@ -606,7 +606,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
             setPartName(SPECIMEN_EDITOR);
         }
         else if(selectedTaxon==null){
-            setPartName(SPECIMEN_EDITOR+" [no taxon selected]");
+            setPartName(SPECIMEN_EDITOR+Messages.DerivateView_NO_TAXON_SELECTED);
         }
     }
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateViewEditorInput.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateViewEditorInput.java
index 3d712d20a..3a1510c80 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateViewEditorInput.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateViewEditorInput.java
@@ -16,7 +16,7 @@ import org.eclipse.jface.resource.ImageDescriptor;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.IPersistableElement;
 
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 
 /**
  * Editor input for the {@link DerivateView}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java
index cbdd50c78..0d9d17e82 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java
@@ -28,7 +28,7 @@ import eu.etaxonomy.cdm.model.occurrence.MediaSpecimen;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateFieldUnitContextMenu.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateFieldUnitContextMenu.java
index 09a52a288..922450ac3 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateFieldUnitContextMenu.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateFieldUnitContextMenu.java
@@ -20,7 +20,7 @@ import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/ListenToSelectionChangeContextMenu.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/ListenToSelectionChangeContextMenu.java
index 38b5de97c..068f249d2 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/ListenToSelectionChangeContextMenu.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/ListenToSelectionChangeContextMenu.java
@@ -12,7 +12,7 @@ import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.actions.CompoundContributionItem;
 
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.ImageResources;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java
index 487b9f421..e7a0de1a2 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java
@@ -27,7 +27,7 @@ import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.operation.DeleteDerivateOperation;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForDescriptionElement.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForDescriptionElement.java
index f7511d3f4..d5f71eea9 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForDescriptionElement.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForDescriptionElement.java
@@ -11,8 +11,8 @@ import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
 import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.handler.OpenDerivateViewHandler;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForTaxonNode.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForTaxonNode.java
index 0e02c07af..bfbe2333d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForTaxonNode.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/OpenDerivativeEditorForTaxonNode.java
@@ -14,8 +14,8 @@ import eu.etaxonomy.cdm.api.service.config.FindOccurrencesConfigurator;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.handler.OpenDerivateViewHandler;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput;
 import eu.etaxonomy.taxeditor.handler.defaultHandler.DefaultOpenHandlerBase;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java
index 857c5c92d..8a9d90226 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java
@@ -25,7 +25,7 @@ import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/MoveDerivateOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/MoveDerivateOperation.java
index 5a113cca6..fe4de88ff 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/MoveDerivateOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/MoveDerivateOperation.java
@@ -29,8 +29,8 @@ import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
-import eu.etaxonomy.taxeditor.editor.Messages;
 import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/searchFilter/DerivateSearchComposite.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/searchFilter/DerivateSearchComposite.java
index ef6283001..32056502d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/searchFilter/DerivateSearchComposite.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/searchFilter/DerivateSearchComposite.java
@@ -20,7 +20,7 @@ import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.wb.swt.ResourceManager;
 
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 
 /**
  * The widgets of the {@link DerivateSearchView}<br>
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDropAdapter.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDropAdapter.java
index 7ab4c9b8f..50072f040 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDropAdapter.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDropAdapter.java
@@ -20,6 +20,7 @@ import org.eclipse.swt.dnd.TransferData;
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.MoveDescriptionElementsOperation;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
@@ -31,7 +32,9 @@ import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
  */
 public class DescriptionElementDropAdapter extends ViewerDropAdapter {
 
-	/**
+    private static final String OPERATION_NOT_SUPPORTED_YET = Messages.DescriptionElementDropAdapter_NOT_SUPPORTED;
+
+    /**
 	 * @param viewer
 	 */
 	public DescriptionElementDropAdapter(Viewer viewer) {
@@ -54,7 +57,7 @@ public class DescriptionElementDropAdapter extends ViewerDropAdapter {
 		if (droppedElements != null){
 			for (Object droppedElement : droppedElements) {
 				if (droppedElement == null){
-					MessagingUtils.warningDialog("Operation not supported yet", this, "We are currently unable to drag and drop a newly created element. Please save the editor to make this work.");
+					MessagingUtils.warningDialog(OPERATION_NOT_SUPPORTED_YET, this, Messages.DescriptionElementDropAdapter_NOT_SUPPORTED_NEW_ELEMENT);
 					return false;
 				}
 				if(! (droppedElement instanceof DescriptionElementBase)){
@@ -70,12 +73,12 @@ public class DescriptionElementDropAdapter extends ViewerDropAdapter {
 				}
 			}
 
-			AbstractPostOperation operation = new MoveDescriptionElementsOperation("Move Descriptions", EditorUtil.getUndoContext(), target, descriptionElements, isCopy, null);
+			AbstractPostOperation operation = new MoveDescriptionElementsOperation(Messages.DescriptionElementDropAdapter_MOVE_DESC, EditorUtil.getUndoContext(), target, descriptionElements, isCopy, null);
 
 			EditorUtil.executeOperation(operation);
 			return true;
 		}
-		MessagingUtils.warningDialog("Operation not supported yet", this, "We are unable to drag and drop empty descriptions");
+		MessagingUtils.warningDialog(OPERATION_NOT_SUPPORTED_YET, this, Messages.DescriptionElementDropAdapter_NOT_SUPPORTED_EMPTY_ELEMENT);
 
 		return false;
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementTransfer.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementTransfer.java
index 9f125ce68..005f1199f 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementTransfer.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementTransfer.java
@@ -24,7 +24,7 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
 public class DescriptionElementTransfer extends CdmObjectTransfer<DescriptionElementBase> {
 
 	private static DescriptionElementTransfer instance = new DescriptionElementTransfer();
-	private static final String TYPE_NAME = "descriptionElement-transfer-format";
+	private static final String TYPE_NAME = "descriptionElement-transfer-format"; //$NON-NLS-1$
 	private static final int TYPEID = registerType(TYPE_NAME);
 	
 	public static synchronized DescriptionElementTransfer getInstance(){
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java
index c5fd8e15c..6e180d34b 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java
@@ -44,7 +44,7 @@ import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor;
 import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.editor.view.media.MediaViewPart;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionElementHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionElementHandler.java
index 87a8c470a..28a23aac8 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionElementHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionElementHandler.java
@@ -76,10 +76,10 @@ public class CreateDescriptionElementHandler extends AbstractHandler {
                 operation = operationCreationInstance(event.getCommand().getName(), event, description, postOperationEnabled);
                 AbstractUtility.executeOperation(operation);
             } catch (NotDefinedException e) {
-                MessagingUtils.warn(getClass(), "Command name not set");
+                MessagingUtils.warn(getClass(), "Command name not set"); //$NON-NLS-1$
             }
         } else {
-            MessagingUtils.error(getClass(), new IllegalArgumentException("Could not determine the taxon description"));
+            MessagingUtils.error(getClass(), new IllegalArgumentException("Could not determine the taxon description")); //$NON-NLS-1$
             return null;
         }
         return null;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionHandler.java
index 46bd2d8e5..fa5ff0f90 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/CreateDescriptionHandler.java
@@ -64,7 +64,7 @@ public class CreateDescriptionHandler extends AbstractHandler {
 			    operation = createTaxonOperation(event.getCommand().getName(), taxon, postOperationEnabled);
 				AbstractUtility.executeOperation(operation);
 			} catch (NotDefinedException e) {
-				MessagingUtils.warn(getClass(), "Command name not set.");
+				MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 			}
 		}
 		// specimen description
@@ -75,7 +75,7 @@ public class CreateDescriptionHandler extends AbstractHandler {
 		            operation = new CreateSpecimenDescriptionOperation(event.getCommand().getName(), EditorUtil.getUndoContext(), (SpecimenOrObservationBase<?>) viewerInput, postOperationEnabled);
 		            AbstractUtility.executeOperation(operation);
 		        } catch (NotDefinedException e) {
-		            MessagingUtils.warn(getClass(), "Command name not set.");
+		            MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 		        }
 		    }
 		    if(viewerInput instanceof TaxonBase){
@@ -83,7 +83,7 @@ public class CreateDescriptionHandler extends AbstractHandler {
 		    		operation = createTaxonOperation(event.getCommand().getName(), (Taxon) viewerInput, postOperationEnabled);
 		            AbstractUtility.executeOperation(operation);
 		    	 } catch (NotDefinedException e) {
-			            MessagingUtils.warn(getClass(), "Command name not set.");
+			            MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 			     }
 		        
 		    }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DeleteHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DeleteHandler.java
index 0a63b2814..19fc669d1 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DeleteHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DeleteHandler.java
@@ -32,6 +32,7 @@ import eu.etaxonomy.cdm.model.description.SpecimenDescription;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.cdm.model.media.Media;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.DeleteDescriptionElementOperation;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.DeleteSpecimenDescriptionOperation;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.DeleteTaxonDescriptionOperation;
@@ -105,7 +106,7 @@ public class DeleteHandler extends AbstractHandler {
                     MediaDeletionConfigurator config = new MediaDeletionConfigurator();
 
                     DeleteConfiguratorDialog dialog;
-                    dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the media?", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0);
+                    dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), Messages.DeleteHandler_CONFIRM_DELETION,  null,  Messages.DeleteHandler_CONFIRM_DELETION_MESSAGE, MessageDialog.WARNING, new String[] { Messages.DeleteHandler_DELETE, Messages.DeleteHandler_SKIP }, 0);
                     int result_dialog= dialog.open();
                     if (result_dialog != Status.OK){
                         return null;
@@ -123,7 +124,7 @@ public class DeleteHandler extends AbstractHandler {
 
 				}
 				else{
-					MessagingUtils.error(getClass(), "Selection is not valid for this delete handler", null);
+					MessagingUtils.error(getClass(), Messages.DeleteHandler_INVALID_SELECTION, null);
 				}
 			}
 
@@ -133,7 +134,7 @@ public class DeleteHandler extends AbstractHandler {
 			}
 
 		} catch (NotDefinedException e) {
-			MessagingUtils.warn(getClass(), "Command name not set.");
+			MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 		}
 
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DescriptionsMenuPropertyTester.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DescriptionsMenuPropertyTester.java
index 3030ef4a3..d47ff9006 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DescriptionsMenuPropertyTester.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DescriptionsMenuPropertyTester.java
@@ -25,16 +25,16 @@ import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
  */
 public class DescriptionsMenuPropertyTester extends PropertyTester {
 
-	private static final String MEDIA = "isMedia";
-	private static final String FEATURE_NODE_CONTAINER = "isFeatureNodeContainer";
-	private static final String DESCRIPTION = "isDescription";
-	private static final String INDIVIDUALS_ASSOCIATION = "isIndividualsAssociation";
-	private static final String DESCRIPTION_ELEMENT = "isDescriptionElement";
-	private static final String DELETABLE = "isDeletable";
-	private static final String IMAGE_GALLERY = "isImageGallery";
-	private static final String TAXON_EDITOR = "isTaxonEditor";
-	private static final String BULK_EDITOR = "isBulkEditor";
-	private static final String DERIVATE_EDITOR = "isDerivateEditor";
+	private static final String MEDIA = "isMedia"; //$NON-NLS-1$
+	private static final String FEATURE_NODE_CONTAINER = "isFeatureNodeContainer"; //$NON-NLS-1$
+	private static final String DESCRIPTION = "isDescription"; //$NON-NLS-1$
+	private static final String INDIVIDUALS_ASSOCIATION = "isIndividualsAssociation"; //$NON-NLS-1$
+	private static final String DESCRIPTION_ELEMENT = "isDescriptionElement"; //$NON-NLS-1$
+	private static final String DELETABLE = "isDeletable"; //$NON-NLS-1$
+	private static final String IMAGE_GALLERY = "isImageGallery"; //$NON-NLS-1$
+	private static final String TAXON_EDITOR = "isTaxonEditor"; //$NON-NLS-1$
+	private static final String BULK_EDITOR = "isBulkEditor"; //$NON-NLS-1$
+	private static final String DERIVATE_EDITOR = "isDerivateEditor"; //$NON-NLS-1$
 
 	/* (non-Javadoc)
 	 * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionElementsHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionElementsHandler.java
index e89037389..d601247ed 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionElementsHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionElementsHandler.java
@@ -35,6 +35,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.Page;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.MoveDescriptionElementsOperation;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
@@ -103,7 +104,7 @@ public class MoveDescriptionElementsHandler extends AbstractHandler implements I
 			}
 			TaxonNode newAcceptedTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event),
 					editor.getConversationHolder(),
-					"Choose the accepted taxon",
+					Messages.MoveDescriptionElementsHandler_CHOOSE_ACC_TAXON,
 					excludeTaxa,
 					null, classification
 					);
@@ -116,7 +117,7 @@ public class MoveDescriptionElementsHandler extends AbstractHandler implements I
     			}
     			newAcceptedTaxonNodeUuid = newAcceptedTaxonNode.getUuid();
 
-    			String moveMessage = String.format("Elements moved from %s", EditorUtil.getActiveMultiPageTaxonEditor().getTaxon());
+    			String moveMessage = String.format(Messages.MoveDescriptionElementsHandler_ELEMENTS_MOVED, EditorUtil.getActiveMultiPageTaxonEditor().getTaxon());
 
     			try {
     				AbstractPostOperation operation = new MoveDescriptionElementsOperation(
@@ -158,7 +159,7 @@ public class MoveDescriptionElementsHandler extends AbstractHandler implements I
 					MessagingUtils.error(this.getClass(), e);
 					throw new RuntimeException(e);
 				} catch (Exception e) {
-					MessagingUtils.warningDialog("Could not create Taxon", this, e.getMessage());
+					MessagingUtils.warningDialog(Messages.MoveDescriptionElementsHandler_CREATE_FAILURE, this, e.getMessage());
 				}
 			}
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java
index c51d0ee05..f67ef5112 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java
@@ -28,6 +28,7 @@ import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.MoveDescriptionToOtherTaxonOperation;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
@@ -65,7 +66,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler
 		editor = EditorUtil.getActiveMultiPageTaxonEditor();
 		if (this.editor.isDirty()){
 		    boolean proceed = MessageDialog.openQuestion(null,
-	                   "Save changes", "You have made changes that must be saved before this query can be executed. Would you like to proceed?");
+	                   Messages.MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES, Messages.MoveDescriptionToOtherTaxonHandler_SAVE_CHANGES_MESSAGE);
 	        if (proceed) {
 	            editor.doSave(EditorUtil.getMonitor());
 	        } else {
@@ -113,7 +114,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler
             }
 			TaxonNode newAcceptedTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event),
 					editor.getConversationHolder(),
-					"Choose the accepted taxon",
+					Messages.MoveDescriptionToOtherTaxonHandler_CHOOSE_ACC_TAXON,
 					excludeTaxa,
 					node,
 					classification);
@@ -137,7 +138,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler
 				}
 
 			} catch (NotDefinedException e) {
-				logger.warn("Command name not set");
+				logger.warn("Command name not set"); //$NON-NLS-1$
 			}
 		}
 
@@ -167,7 +168,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler
 					MessagingUtils.error(this.getClass(), e);
 					throw new RuntimeException(e);
 				} catch (Exception e) {
-					MessagingUtils.warningDialog("Could not create Taxon", this, e.getMessage());
+					MessagingUtils.warningDialog(Messages.MoveDescriptionToOtherTaxonHandler_CREATE_FAILED, this, e.getMessage());
 				}
 			}
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/AddDerivedUnitFacadeMediaOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/AddDerivedUnitFacadeMediaOperation.java
index 40312990c..ef29bffed 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/AddDerivedUnitFacadeMediaOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/AddDerivedUnitFacadeMediaOperation.java
@@ -22,6 +22,7 @@ import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
 import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
@@ -33,7 +34,9 @@ import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
  */
 public class AddDerivedUnitFacadeMediaOperation extends AbstractPostTaxonOperation {
 
-	private final SpecimenOrObservationBase<?> specimen;
+    private static final String ONLY_ONE_IMAGE_GALLERY_IS_POSSIBLE = Messages.AddDerivedUnitFacadeMediaOperation_CREATE_FAILED_MESSAGE;
+    private static final String IMAGE_GALLERY_CREATION_FAILED = Messages.AddDerivedUnitFacadeMediaOperation_CREATE_FAILED;
+    private final SpecimenOrObservationBase<?> specimen;
 
 	/**
 	 * @param label
@@ -57,7 +60,7 @@ public class AddDerivedUnitFacadeMediaOperation extends AbstractPostTaxonOperati
 		    if(specimen instanceof FieldUnit){
 		        facade = DerivedUnitFacade.NewInstance(SpecimenOrObservationType.FieldUnit, (FieldUnit) specimen);
 		        if(facade.hasFieldObjectImageGallery()){
-		            MessagingUtils.informationDialog("Image gallery creation failed", "Only one image gallery is possible.");
+		            MessagingUtils.informationDialog(IMAGE_GALLERY_CREATION_FAILED, ONLY_ONE_IMAGE_GALLERY_IS_POSSIBLE);
 		            return Status.CANCEL_STATUS;
 		        }
 		        else{
@@ -67,7 +70,7 @@ public class AddDerivedUnitFacadeMediaOperation extends AbstractPostTaxonOperati
 		    else if(specimen instanceof DerivedUnit){
 		        facade = DerivedUnitFacade.NewInstance((DerivedUnit)specimen);
 		        if(facade.hasDerivedUnitImageGallery()){
-		            MessagingUtils.informationDialog("Image gallery creation failed", "Only one image gallery is possible.");
+		            MessagingUtils.informationDialog(IMAGE_GALLERY_CREATION_FAILED, ONLY_ONE_IMAGE_GALLERY_IS_POSSIBLE);
 		            return Status.CANCEL_STATUS;
 		        }
 		        else{
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/CreateDescriptionElementOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/CreateDescriptionElementOperation.java
index a16125b36..0f4ca8b20 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/CreateDescriptionElementOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/CreateDescriptionElementOperation.java
@@ -40,7 +40,7 @@ import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 public class CreateDescriptionElementOperation extends AbstractPostTaxonOperation {
 
 	/** Constant <code>ID="eu.etaxonomy.taxeditor.editor.descripti"{trunked}</code> */
-	public static final String ID = "eu.etaxonomy.taxeditor.editor.view.descriptive.command.createDescriptionElement";
+	public static final String ID = "eu.etaxonomy.taxeditor.editor.view.descriptive.command.createDescriptionElement"; //$NON-NLS-1$
 
 	private final DescriptionBase<?> description;
 	private final Feature feature;
@@ -94,7 +94,7 @@ public class CreateDescriptionElementOperation extends AbstractPostTaxonOperatio
 		monitor.worked(20);
 		if (element == null) {
 			if (feature.isSupportsCommonTaxonName()) {
-				element = CommonTaxonName.NewInstance("", null);
+				element = CommonTaxonName.NewInstance("", null); //$NON-NLS-1$
 			}
 			else if (feature.isSupportsDistribution()) {
 				element = Distribution.NewInstance();
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/DeleteDescriptionElementOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/DeleteDescriptionElementOperation.java
index 54834bac6..9ee81413a 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/DeleteDescriptionElementOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/DeleteDescriptionElementOperation.java
@@ -17,6 +17,7 @@ import org.eclipse.core.runtime.IStatus;
 
 import eu.etaxonomy.cdm.model.description.DescriptionBase;
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
@@ -64,7 +65,7 @@ public class DeleteDescriptionElementOperation extends AbstractPostTaxonOperatio
 
 		// Remove element from description
 		if (description == null) {
-			MessagingUtils.error(this.getClass(), "Couldn't find element's description!", null);
+			MessagingUtils.error(this.getClass(), Messages.DeleteDescriptionElementOperation_DESC_NOT_FOUND, null);
 		} else {
 			description.removeElement(element);
 		}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/EditInXper2Handler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/EditInXper2Handler.java
index 5e2239599..9e998fd1e 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/EditInXper2Handler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/EditInXper2Handler.java
@@ -20,7 +20,7 @@ public class EditInXper2Handler extends AbstractHandler {
 	 */
 	@Override
 	public Object execute(ExecutionEvent event) throws ExecutionException {
-		MessagingUtils.warningDialog("Operation not supported yet", getClass(), "This operation is not supported yet.");
+		MessagingUtils.warningDialog("Operation not supported yet", getClass(), "This operation is not supported yet."); //$NON-NLS-1$ //$NON-NLS-2$
 		return null;
 	}
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/MoveDescriptionToOtherTaxonOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/MoveDescriptionToOtherTaxonOperation.java
index 2b430931c..d92ab454e 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/MoveDescriptionToOtherTaxonOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/operation/MoveDescriptionToOtherTaxonOperation.java
@@ -26,6 +26,7 @@ import eu.etaxonomy.cdm.model.common.Language;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.operation.AbstractPersistentPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
@@ -78,11 +79,11 @@ public class MoveDescriptionToOtherTaxonOperation extends
 		monitor.worked(20);
 		bind();
 
-		String moveMessage = String.format("Description moved from %s", EditorUtil.getActiveMultiPageTaxonEditor().getTaxon());
+		String moveMessage = String.format(Messages.MoveDescriptionToOtherTaxonOperation_MOVED_FROM, EditorUtil.getActiveMultiPageTaxonEditor().getTaxon());
 		if(description.isProtectedTitleCache()){
-			String separator = "";
+			String separator = ""; //$NON-NLS-1$
 			if(!StringUtils.isBlank(description.getTitleCache())){
-				separator = " - ";
+				separator = " - "; //$NON-NLS-1$
 			}
 			description.setTitleCache(description.getTitleCache() + separator + moveMessage, true);
 		}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaContentProvider.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaContentProvider.java
index cac33da66..4863ef254 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaContentProvider.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaContentProvider.java
@@ -58,7 +58,7 @@ public class MediaContentProvider implements ITreeContentProvider{
 			}
 			 
 			if(taxon == null){
-				MessagingUtils.error(getClass(), "Taxon is null", null);
+				MessagingUtils.error(getClass(), "Taxon is null", null); //$NON-NLS-1$
 				return NO_CHILDREN;
 			}
 			HashSet<DescriptionBase> imageGalleries = new HashSet<DescriptionBase>();
@@ -90,7 +90,7 @@ public class MediaContentProvider implements ITreeContentProvider{
 				}
 
 			} catch (DerivedUnitFacadeNotSupportedException e) {
-				MessagingUtils.error(this.getClass(), "DerivedUnitFacadeNotSupportedException when trying to instantiate DerivedUnitFacade", e);
+				MessagingUtils.error(this.getClass(), "DerivedUnitFacadeNotSupportedException when trying to instantiate DerivedUnitFacade", e); //$NON-NLS-1$
 			}
 		}
 		else if (parentElement instanceof FieldUnit){
@@ -138,13 +138,13 @@ public class MediaContentProvider implements ITreeContentProvider{
     public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {}
 
 	private List<Media> getImages(DescriptionBase description){
-		Assert.isTrue(description.isImageGallery(), "Description should have the imageGallery flag set.");
+		Assert.isTrue(description.isImageGallery(), "Description should have the imageGallery flag set."); //$NON-NLS-1$
 
 		Set<DescriptionElementBase> elements = description.getElements();
 		if (elements != null) {
 			// by definition, image galleries have only one description element
 			if(elements.size() > 1){
-				MessagingUtils.error(this.getClass(), "There should be one and only one description element to hold the images. Found: " + elements.size() + " InDescription ID: " + description.getUuid(), null);
+				MessagingUtils.error(this.getClass(), "There should be one and only one description element to hold the images. Found: " + elements.size() + " InDescription ID: " + description.getUuid(), null); //$NON-NLS-1$ //$NON-NLS-2$
 			}
 			if (!elements.isEmpty()){
 				DescriptionElementBase element = elements.iterator().next();
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java
index 2cd347b2b..ae339497d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java
@@ -28,6 +28,7 @@ import org.eclipse.ui.IWorkbenchPart;
 import eu.etaxonomy.cdm.model.description.IDescribable;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptiveViewPart;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
@@ -44,7 +45,7 @@ import eu.etaxonomy.taxeditor.view.supplementaldata.SupplementalDataViewPart;
  */
 public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartContentHasDetails, IPartContentHasSupplementalData {
 
-	public static final String ID = "eu.etaxonomy.taxeditor.editor.view.media";
+	public static final String ID = "eu.etaxonomy.taxeditor.editor.view.media"; //$NON-NLS-1$
 
 
 	private TreeViewer viewer;
@@ -153,6 +154,6 @@ public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartCon
 
 	@Override
 	protected String getViewName() {
-		return "Media";
+		return Messages.MediaViewPart_MEDIA;
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddExistingMediaHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddExistingMediaHandler.java
index 097849cf0..4367e2577 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddExistingMediaHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddExistingMediaHandler.java
@@ -34,7 +34,7 @@ public class AddExistingMediaHandler extends CreateMediaHandler {
                 AbstractUtility.executeOperation(operation);
             }
         } catch (NotDefinedException e) {
-            MessagingUtils.warn(getClass(), "Command name not set.");
+            MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
         }
     }
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddImageGalleryHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddImageGalleryHandler.java
index 4a2696a50..5f7a22a13 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddImageGalleryHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddImageGalleryHandler.java
@@ -59,7 +59,7 @@ public class AddImageGalleryHandler extends AbstractHandler {
 	                }
 	            }
 	        } catch (NotDefinedException e) {
-	            MessagingUtils.warn(getClass(), "Command name not set.");
+	            MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 	        }
 	    }
 	    return null;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/CreateMediaHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/CreateMediaHandler.java
index 0bd72b3f1..5acff5c53 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/CreateMediaHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/CreateMediaHandler.java
@@ -83,7 +83,7 @@ public class CreateMediaHandler extends AbstractHandler {
         			EditorUtil.getUndoContext(), description, postOperationEnabled);
         	AbstractUtility.executeOperation(operation);
         } catch (NotDefinedException e) {
-        	MessagingUtils.warn(getClass(), "Command name not set.");
+        	MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
         }
     }
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/DeleteMediaHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/DeleteMediaHandler.java
index 9dcbe2a2e..004301665 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/DeleteMediaHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/DeleteMediaHandler.java
@@ -23,6 +23,7 @@ import eu.etaxonomy.cdm.model.media.ImageFile;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.ui.dialog.configurator.deleteConfigurator.DeleteConfiguratorDialog;
@@ -71,7 +72,7 @@ public class DeleteMediaHandler extends AbstractHandler {
                 MediaDeletionConfigurator config = new MediaDeletionConfigurator();
 
                 DeleteConfiguratorDialog dialog;
-                dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the media?", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0);
+                dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), Messages.DeleteMediaHandler_CONFIRM,  null,  Messages.DeleteMediaHandler_CONFIRM_MESSAGE, MessageDialog.WARNING, new String[] { Messages.DeleteMediaHandler_DELETE, Messages.DeleteMediaHandler_SKIP }, 0);
                 int result_dialog= dialog.open();
                 if (result_dialog != Status.OK){
                     return null;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageDownInListHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageDownInListHandler.java
index d822f9a94..a473d8deb 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageDownInListHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageDownInListHandler.java
@@ -75,7 +75,7 @@ public class MoveImageDownInListHandler extends AbstractHandler {
 							EditorUtil.getUndoContext(), taxon, description, media, MoveMediaInListOperation.DOWN, postOperationEnabled);
 					EditorUtil.executeOperation(operation);
 				} catch (NotDefinedException e) {
-					MessagingUtils.warn(getClass(), "Command name not set.");
+					MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 				}
 			}
 		} 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageUpInListHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageUpInListHandler.java
index 6fbd6be1d..ea525d205 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageUpInListHandler.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/MoveImageUpInListHandler.java
@@ -74,7 +74,7 @@ public class MoveImageUpInListHandler extends AbstractHandler {
 							EditorUtil.getUndoContext(), taxon, element, media, MoveMediaInListOperation.UP, postOperationEnabled);
 					EditorUtil.executeOperation(operation);
 				} catch (NotDefinedException e) {
-					MessagingUtils.warn(getClass(), "Command name not set.");
+					MessagingUtils.warn(getClass(), "Command name not set."); //$NON-NLS-1$
 				}
 			}
 		} 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/operation/MoveMediaInListOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/operation/MoveMediaInListOperation.java
index 1b02b432c..d2dffa56d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/operation/MoveMediaInListOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/operation/MoveMediaInListOperation.java
@@ -23,6 +23,7 @@ import eu.etaxonomy.cdm.model.description.DescriptionBase;
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
 import eu.etaxonomy.cdm.model.media.Media;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
@@ -107,7 +108,7 @@ public class MoveMediaInListOperation extends AbstractPostTaxonOperation {
 		Set<DescriptionElementBase> elements = description.getElements();
 		
 		if(elements.size() != 1){
-			MessagingUtils.error(this.getClass(), "More than one description element in this image gallery", null);
+			MessagingUtils.error(this.getClass(), Messages.MoveMediaInListOperation_MORE_DESC, null);
 		}
 		
 		DescriptionElementBase element = elements.iterator().next();
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesLabelProvider.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesLabelProvider.java
index 795faa16e..d0d1ccb85 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesLabelProvider.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesLabelProvider.java
@@ -1,8 +1,8 @@
 /**
 * Copyright (C) 2011 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
@@ -22,30 +22,36 @@ import eu.etaxonomy.cdm.model.description.CategoricalData;
 import eu.etaxonomy.cdm.model.description.DescriptionBase;
 import eu.etaxonomy.cdm.model.description.StateData;
 import eu.etaxonomy.cdm.model.description.TextData;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.FeatureNodeContainer;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.store.UsageTermCollection;
 
 /**
  * UsesLabelProvider Class
- * @author a.theys	
+ * @author a.theys
  * @created mar 13, 2012
  * @version 1.0
  */
 public class UsesLabelProvider extends ColumnLabelProvider implements
 		IStyledLabelProvider {
-	
-	/** {@inheritDoc} */
-	public String getText(Object element) {
-		String text = "";
+
+    private static final String USE = Messages.UsesLabelProvider_USE;
+    private static final String NO_DATA_PROVIDED = Messages.UsesLabelProvider_NO_DATA;
+    private static final String SEMICOLON = ";"; //$NON-NLS-1$
+
+    /** {@inheritDoc} */
+	@Override
+    public String getText(Object element) {
+		String text = ""; //$NON-NLS-1$
 
 		if (element instanceof DescriptionBase) {
 			text = ((DescriptionBase) element).getTitleCache();
 			if (text == null || text.length() == 0) {
-				text = "Use: No label provided";
+				text = USE+Messages.UsesLabelProvider_NO_LABEL;
 			}
 			else {
-				text = "Use: " + text;
+				text = USE + text;
 			}
 		}
 		else if (element instanceof CategoricalData) {
@@ -53,104 +59,104 @@ public class UsesLabelProvider extends ColumnLabelProvider implements
 				boolean isUseCategoryAbsent = true;
 				for (StateData statedata : ((CategoricalData) element).getStateData()) {
 					if(statedata.getState() != null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()) !=null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()).getText().equals(UsageTermCollection.useCategoryVocabularyLabel)) {
-						text = text + statedata.getState().getTitleCache() + ";";
+						text = text + statedata.getState().getTitleCache() + SEMICOLON;
 						isUseCategoryAbsent = false;
 					}
 				}
 				if(isUseCategoryAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
-				
+
 				boolean isUseSubCategoryAbsent = true;
 				for (StateData statedata : ((CategoricalData) element).getStateData()) {
 					if(statedata.getState() != null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()) !=null && statedata.getModifyingText().get(CdmStore.getDefaultLanguage()).getText().equals(UsageTermCollection.useSubCategoryVocabularyLabel)) {
-						text = text + statedata.getState().getTitleCache() + ";";
+						text = text + statedata.getState().getTitleCache() + SEMICOLON;
 						isUseSubCategoryAbsent = false;
 					}
 				}
 				if(isUseSubCategoryAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
 			}
 			else {
-				text = text + UsageTermCollection.notAvailableLabel + ";" + UsageTermCollection.notAvailableLabel + ";";
+				text = text + UsageTermCollection.notAvailableLabel + SEMICOLON + UsageTermCollection.notAvailableLabel + SEMICOLON;
 			}
 			if (!((CategoricalData) element).getModifiers().isEmpty()) {
 				for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){
 					modifier.getPartOf();
 					modifier.getVocabulary();
 				}
-				
+
 				boolean isPlantPartAbsent = true;
 				for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){
 					if(GetVocabularyType(modifier, UsageTermCollection.plantPartLabel)) {
-						text = text +  modifier.getTitleCache()+ ";";
+						text = text +  modifier.getTitleCache()+ SEMICOLON;
 						isPlantPartAbsent = false;
 					}
-					
+
 				}
 				if (isPlantPartAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
-				
+
 				boolean isHumanGroupAbsent = true;
 				for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){
 					if(GetVocabularyType(modifier, UsageTermCollection.humanGroupLabel)) {
-						text = text +  modifier.getTitleCache()+ ";";
+						text = text +  modifier.getTitleCache()+ SEMICOLON;
 						isHumanGroupAbsent = false;
 					}
 				}
 				if (isHumanGroupAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
-				
+
 				boolean isEthnicGroupAbsent = true;
 				for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){
 					if(GetVocabularyType(modifier, UsageTermCollection.ethnicGroupLabel)) {
-						text = text +  modifier.getTitleCache()+ ";";
+						text = text +  modifier.getTitleCache()+ SEMICOLON;
 						isEthnicGroupAbsent = false;
 					}
 				}
 				if (isEthnicGroupAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
-				
+
 				boolean isCountryAbsent = true;
 				for (DefinedTerm modifier: ((CategoricalData) element).getModifiers()){
 					if(GetVocabularyType(modifier, UsageTermCollection.countryLabel)) {
-						text = text +  modifier.getTitleCache()+ ";";
+						text = text +  modifier.getTitleCache()+ SEMICOLON;
 						isCountryAbsent = false;
 					}
 				}
 				if (isCountryAbsent) {
-					text = text + UsageTermCollection.notAvailableLabel + ";";
+					text = text + UsageTermCollection.notAvailableLabel + SEMICOLON;
 				}
 			}
 			else {
-				text = text + UsageTermCollection.notAvailableLabel + ";" + UsageTermCollection.notAvailableLabel + ";" + UsageTermCollection.notAvailableLabel + ";" + UsageTermCollection.notAvailableLabel + ";";
+				text = text + UsageTermCollection.notAvailableLabel + SEMICOLON + UsageTermCollection.notAvailableLabel + SEMICOLON + UsageTermCollection.notAvailableLabel + SEMICOLON + UsageTermCollection.notAvailableLabel + SEMICOLON;
 			}
-		
+
 			if (text == null || text.length() == 0) {
-				text = "No data provided";
+				text = NO_DATA_PROVIDED;
 			}
 			else {
-				String[] textElements = text.split(";");
-				String dataportalString = textElements[0] + ";" + textElements[1] + ";" + textElements[5] + ";" + textElements[2] + ";" + textElements[3] + ";" + textElements[4] + ";" ;  
-				
+				String[] textElements = text.split(SEMICOLON);
+				String dataportalString = textElements[0] + SEMICOLON + textElements[1] + SEMICOLON + textElements[5] + SEMICOLON + textElements[2] + SEMICOLON + textElements[3] + SEMICOLON + textElements[4] + SEMICOLON ;
+
 				((CategoricalData)element).putModifyingText(CdmStore.getDefaultLanguage(), dataportalString);
 			}
 			return text;
 		}
-		
+
 		else if (element instanceof TextData) {
 			List<Language> languages = Arrays.asList(new Language[]{CdmStore.getDefaultLanguage()});
 			LanguageString languageString = ((TextData) element).getPreferredLanguageString(languages);
 			text = languageString != null ? languageString.getText() : null;
 			if (text == null || text.length() == 0) {
-				text = "No data provided";
+				text = NO_DATA_PROVIDED;
 			}
 		}
-		
+
 		else if (element instanceof FeatureNodeContainer){
 			text = ((FeatureNodeContainer)element).getFeature().getTitleCache();
 		}
@@ -158,8 +164,8 @@ public class UsesLabelProvider extends ColumnLabelProvider implements
 		return  text;
 	}
 
-	/** Function dertmining which vocabulary is the term part of 
-	 *  
+	/** Function dertmining which vocabulary is the term part of
+	 *
 	 * @param term
 	 * @param vocabularyExpected
 	 * @return
@@ -176,14 +182,14 @@ public class UsesLabelProvider extends ColumnLabelProvider implements
 		}
 	return false;
 	}
-	
+
 	/** {@inheritDoc} */
 	@Override
 	public StyledString getStyledText(Object element) {
 		return new StyledString(this.getText(element),
 				StyledString.QUALIFIER_STYLER);
 	}
-	
-	
+
+
 
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesViewPart.java
index 481a39e8b..2e816f3de 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesViewPart.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/UsesViewPart.java
@@ -15,7 +15,7 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Tree;
 
 import eu.etaxonomy.cdm.model.common.CdmBase;
-import eu.etaxonomy.taxeditor.editor.Messages;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptionElementDragListener;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptionElementDropAdapter;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptionElementTransfer;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseRecordOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseRecordOperation.java
index 28b7b2011..270eec97c 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseRecordOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseRecordOperation.java
@@ -34,7 +34,7 @@ import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 public class CreateUseRecordOperation extends AbstractPostOperation {
 
 	/** Constant <code>ID="eu.etaxonomy.taxeditor.editor.view.use."{trunked}</code> */
-	public static final String ID = "eu.etaxonomy.taxeditor.editor.use.createUseRecord";
+	public static final String ID = "eu.etaxonomy.taxeditor.editor.use.createUseRecord"; //$NON-NLS-1$
 	private final DescriptionBase<?> description;
 	private final Feature feature;
 	private DescriptionElementBase element;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseSummaryOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseSummaryOperation.java
index 80c85db61..ac2d6e9d9 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseSummaryOperation.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/uses/operation/CreateUseSummaryOperation.java
@@ -32,7 +32,7 @@ import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
  */
 public class CreateUseSummaryOperation extends AbstractPostOperation {
 
-	public static final String ID = "eu.etaxonomy.taxeditor.editor.use.createUseRecord";
+	public static final String ID = "eu.etaxonomy.taxeditor.editor.use.createUseRecord"; //$NON-NLS-1$
 
 	private final DescriptionBase<?> description;
 	private final Feature feature;
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityClassMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityClassMarkerField.java
index 6a13ceb77..07449a2e8 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityClassMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityClassMarkerField.java
@@ -13,10 +13,10 @@ public class EntityClassMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_ENTITY_CLASS);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_ENTITY_CLASS);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_ENTITY_CLASS); //$NON-NLS-1$
 		}
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityIdMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityIdMarkerField.java
index 40ec33c62..397b3948d 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityIdMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/EntityIdMarkerField.java
@@ -13,10 +13,10 @@ public class EntityIdMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_ENTITY_ID);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_ENTITY_ID);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_ENTITY_ID); //$NON-NLS-1$
 		}
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/InvalidValueMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/InvalidValueMarkerField.java
index b82324fe6..1d4f591c1 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/InvalidValueMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/InvalidValueMarkerField.java
@@ -13,10 +13,10 @@ public class InvalidValueMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_INVALID_VALUE);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_INVALID_VALUE);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_INVALID_VALUE); //$NON-NLS-1$
 		}
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyDescriptionMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyDescriptionMarkerField.java
index 0744a0665..649c66040 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyDescriptionMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyDescriptionMarkerField.java
@@ -13,10 +13,10 @@ public class UserFriendlyDescriptionMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_USER_FRIENDLY_DESCRIPTION);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_DESCRIPTION);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_DESCRIPTION); //$NON-NLS-1$
 		}
 	}
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyFieldNameMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyFieldNameMarkerField.java
index 97d3db524..7d25c861b 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyFieldNameMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyFieldNameMarkerField.java
@@ -13,10 +13,10 @@ public class UserFriendlyFieldNameMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_USER_FRIENDLY_FIELD_NAME);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_FIELD_NAME);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_FIELD_NAME); //$NON-NLS-1$
 		}
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyTypeNameMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyTypeNameMarkerField.java
index 38419dccb..66b664d91 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyTypeNameMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/UserFriendlyTypeNameMarkerField.java
@@ -13,10 +13,10 @@ public class UserFriendlyTypeNameMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_USER_FRIENDLY_TYPE_NAME);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_TYPE_NAME);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_USER_FRIENDLY_TYPE_NAME); //$NON-NLS-1$
 		}
 	}
 }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidationProblemsView.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidationProblemsView.java
index d81f97bc5..2ef42daf0 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidationProblemsView.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidationProblemsView.java
@@ -6,7 +6,7 @@ public class ValidationProblemsView extends MarkerSupportView {
 
 	public ValidationProblemsView()
 	{
-		super("eu.etaxonomy.taxeditor.editor.validation.ValidationProblemsMarkerGenerator");
+		super("eu.etaxonomy.taxeditor.editor.validation.ValidationProblemsMarkerGenerator"); //$NON-NLS-1$
 	}
 
 	
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorClassMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorClassMarkerField.java
index 9b8aa1249..fbcf2f169 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorClassMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorClassMarkerField.java
@@ -13,10 +13,10 @@ public class ValidatorClassMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_VALIDATOR_CLASS);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_VALIDATOR_CLASS);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_VALIDATOR_CLASS); //$NON-NLS-1$
 		}
 	}
 
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorMessageMarkerField.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorMessageMarkerField.java
index 970f337c6..da28eb0ed 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorMessageMarkerField.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/validation/ValidatorMessageMarkerField.java
@@ -13,10 +13,10 @@ public class ValidatorMessageMarkerField extends MarkerField {
 	{
 		try {
 			Object value = item.getMarker().getAttribute(MarkerManager.ATTRIB_VALIDATOR_MESSAGE);
-			return value == null ? "" : value.toString();
+			return value == null ? "" : value.toString(); //$NON-NLS-1$
 		}
 		catch (CoreException e) {
-			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_VALIDATOR_MESSAGE);
+			throw new RuntimeException("Error while retrieving value for " + MarkerManager.ATTRIB_VALIDATOR_MESSAGE); //$NON-NLS-1$
 		}
 	}
 
