h1. Translation Keys Changes

This document lists the changes in @TranslatableMessage@ used for Sirius internationalization in each Sirius version.

h2(#sirius61). Translation Keys Changes in Sirius 6.1 (from Sirius 6.0)

h3. Message Keys Added

* @org.eclipse.sirius.common.ui.Messages.MigrationUIUtil_askToSaveChanges@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ChangeEditModeAction_ChangeFailure@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ChangeEditModeAction_ChangePropertyValueRequest_label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DDiagramEditorImpl_updateToolFailure@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DefaultModeAction_Label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DefaultModeAction_statusOn@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramAppearancePreferencePage_displayUserFixedColorsInPaletteLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DoubleClickEditPolicy_confirmDialogAsking@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DoubleClickEditPolicy_confirmDialogTitle@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DoubleClickEditPolicy_filterConfirmDialogBody@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DoubleClickEditPolicy_layerConfirmDialogBody@
* @org.eclipse.sirius.diagram.ui.provider.Messages.EditModeAction_Label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.Group_No_Menu_ID@
* @org.eclipse.sirius.diagram.ui.provider.Messages.Group_Not_Displayed@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LayoutingModeSwitchingAction_label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_Blank@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_MoreThanTwoLocations@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_NoId@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_OnlyOneLocationURIPerScheme@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_WrongFormat@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LocationURI_ParsePb_WrongScheme@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.UndoRedoCapableEMFCommandFactory_insertHorizontalBlankSpaceNotImplemented@
* @org.eclipse.sirius.diagram.Messages.ToolManagment_ToolChange_Command_Label@
* @org.eclipse.sirius.diagram.Messages.UpdateToolRecordingCommand_cancelExceptionMessage@
* @org.eclipse.sirius.diagram.Messages.ViewWithNullElementMigrationParticipant_message@
* @org.eclipse.sirius.diagram.Messages.ViewWithNullElementMigrationParticipant_singleMessage@
* @org.eclipse.sirius.diagram.Messages.ViewWithNullElementMigrationParticipant_title@
* @org.eclipse.sirius.editor.Messages.CustomLayoutConfigurationDescriptionPropertySection_noLayoutAlgorithmProviderDescription@
* @org.eclipse.sirius.editor.Messages.CustomLayoutConfigurationDescriptionPropertySection_noLayoutAlgorithmProviderName@
* @org.eclipse.sirius.server.internal.Messages.SiriusServerConfigurator_headerConfig@
* @org.eclipse.sirius.server.internal.Messages.SiriusServerConfigurator_wrongPropertyTypeWarning@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusPreferencePage_askUserToSaveAfterMigration@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusPreferencePage_migrationGroup@
* @org.eclipse.sirius.viewpoint.provider.Messages.CreateMissingRepresentationFileResolution_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.CreateMissingRepresentationFileResolution_description@
* @org.eclipse.sirius.viewpoint.Messages.AirDResourceImpl_nullUid@
* @org.eclipse.sirius.viewpoint.Messages.Constraint_validNullLocationURIForGroupInPopupMenuConstraint_message@
* @org.eclipse.sirius.viewpoint.Messages.TechnicalUidMigrationParticipant_message@

h3. Message Keys Removed

* @org.eclipse.sirius.diagram.ui.provider.Messages.LayoutingModeSwitchingAction_activate@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LayoutingModeSwitchingAction_deactivate@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_activate@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_deactivate@
* @org.eclipse.sirius.diagram.Messages.UndoRedoCapableEMFCommandFactory_insertHorizontalBlankSpaceNotImplemented@

h2(#sirius60). Translation Keys Changes in Sirius 6.0 (from Sirius 5.1)

h3. Message Keys Added

* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramGeneralPreferencePage_sizeGroupLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.GenericConnectionCreationTool_label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.InsertBlankSpace_cmdName@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LayoutAlgorithmProviderRegistry_badClassType@
* @org.eclipse.sirius.diagram.ui.provider.Messages.LayoutAlgorithmProviderRegistry_classInitialization@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SetShowingModeCommandAndUpdateActionImage_activateLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SetShowingModeCommandAndUpdateActionImage_deactivateLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_activate@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_deactivate@
* @org.eclipse.sirius.diagram.ui.provider.Messages.ShowingModeSwitchingAction_statusOn@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_expressionMessage@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_expressionTitle@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_expressionTooltip@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_sameETypeMessage@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_sameETypeTitle@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StandardDiagramServices_sameETypeTooltip@
* @org.eclipse.sirius.diagram.Messages.NoteAttachmentWithoutSourceOrTargetMigrationParticipant_edgesRemoved@
* @org.eclipse.sirius.diagram.Messages.NoteAttachmentWithoutSourceOrTargetMigrationParticipant_title@
* @org.eclipse.sirius.diagram.Messages.UndoRedoCapableEMFCommandFactory_insertHorizontalBlankSpaceNotImplemented@
* @org.eclipse.sirius.diagram.Messages.UndoRedoCapableEMFCommandFactory_insertVerticalBlankSpaceNotImplemented@
* @org.eclipse.sirius.editor.workflow.internal.Messages.WorkflowMenuBuilder_NewWorkflow_label@
* @org.eclipse.sirius.editor.workflow.internal.Messages.WorkflowMenuBuilder_label@
* @org.eclipse.sirius.editor.Messages.AddOptionOverridePropertySection_dialogTitle@
* @org.eclipse.sirius.editor.Messages.AddOptionOverridePropertySection_overrideButtonLabel@
* @org.eclipse.sirius.editor.Messages.CustomSiriusEditor_failedNavigationExceptionMessage@
* @org.eclipse.sirius.editor.Messages.CustomSiriusEditor_failedNavigationMessage@
* @org.eclipse.sirius.editor.Messages.CustomSiriusEditor_failedNavigationTitle@
* @org.eclipse.sirius.editor.Messages.LayoutOptionValue_defaultLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_filteringLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_optionDefaultValueColumnLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_optionDescriptionLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_optionNameColumnLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_optionTypeColumnLabel@
* @org.eclipse.sirius.editor.Messages.OptionOverrideEditorDialog_tableLabel@
* @org.eclipse.sirius.editor.Messages.ServiceNavigator_serviceNavigationDialog_description@
* @org.eclipse.sirius.editor.Messages.ServiceNavigator_serviceNavigationDialog_title@
* @org.eclipse.sirius.editor.Messages.ServiceNavigator_targetInitialization_error@
* @org.eclipse.sirius.ext.ide.internal.Messages.DescriptorRegistryEventListener_cannotInstantiateExtension@
* @org.eclipse.sirius.ext.ide.internal.Messages.DescriptorRegistryEventListener_extensionAlreadyContributed@
* @org.eclipse.sirius.ext.ide.internal.Messages.DescriptorRegistryEventListener_missingAttribute@
* @org.eclipse.sirius.server.internal.Messages.SiriusServerManager_cannotStartServer@
* @org.eclipse.sirius.server.internal.Messages.SiriusServerManager_cannotStopServer@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractExportRepresentationsAsImagesDialog_scalingLevelDiagramLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ExportAction_invalidLevel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ExportAsImage_dialogSizeGroupName@
* @org.eclipse.sirius.viewpoint.provider.Messages.ExportAsImage_maxLevelLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ExportAsImage_nominalLevelLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ExportAsImage_sizeTooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.No_Browser_Error_Message@
* @org.eclipse.sirius.viewpoint.provider.Messages.OpenViewpointSelectionBrowser_Error_Message@
* @org.eclipse.sirius.viewpoint.provider.Messages.SingleRepresentationTreeSelectionDialog_Title@
* @org.eclipse.sirius.workflow.ui.page.Messages.WorkflowPage_header_title@
* @org.eclipse.sirius.workflow.ui.page.Messages.WorkflowPage_tab_name@
* @org.eclipse.sirius.viewpoint.Messages.InvalidModelingProjectMarkerUpdaterJob_updateMarkers@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_addAnotherRepresentationFile@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_addAnotherRepresentationFileSeveralProjects@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_mainRepresentationFileDeleted@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_mainRepresentationFilesOfSomeProjectsDeleted@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_satusUnsaveDataWillBeLostWithProjectNames@
* @org.eclipse.sirius.viewpoint.Messages.ModelingModelProvider_satusUnsavedDataWillBeLost@

h3. Message Keys Removed

* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramGeneralPreferencePage_scaleDiagramOnExport@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractExportRepresentationsAsImagesDialog_autoScaleDiagram@
* @org.eclipse.sirius.viewpoint.provider.Messages.InvalidModelingProjectMarkerUpdaterJob_updateMarkers@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_addAnotherRepresentationFile@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_addAnotherRepresentationFileSeveralProjects@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_mainRepresentationFileDeleted@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_mainRepresentationFilesOfSomeProjectsDeleted@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_satusUnsaveDataWillBeLostWithProjectNames@
* @org.eclipse.sirius.viewpoint.provider.Messages.ModelingModelProvider_satusUnsavedDataWillBeLost@

h2(#sirius51). Translation Keys Changes in Sirius 5.1 (from Sirius 5.0)

h3. Message Keys Added

* @org.eclipse.sirius.diagram.sequence.Messages.Range_wrongArgument@
* @org.eclipse.sirius.diagram.ui.provider.Messages.BundledImageShape_attributeAbsent@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramGeneralPreferencePage_scaleDiagramOnExport@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramGeneralPreferencePage_showSynchronizeStatusDecoratorLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.RepairGMFbendpointsMigrationParticipant_edgesModified@
* @org.eclipse.sirius.diagram.ui.provider.Messages.RepairGMFbendpointsMigrationParticipant_title@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SiriusStatusLineContributionItemProvider_diagramSynchronized@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SiriusStatusLineContributionItemProvider_diagramUnsynchronized@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SnapBackDistantLabelsMigrationParticipant_nodesMoved@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SnapBackDistantLabelsMigrationParticipant_oneLabelSnapBacked@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SnapBackDistantLabelsMigrationParticipant_severalLabelsSnapBacked@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SnapBackDistantLabelsMigrationParticipant_title@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_BottomSidePinnedLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_BottomSidePinnedTooltip@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_LeftSidePinnedLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_LeftSidePinnedTooltip@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_RightSidePinnedLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_RightSidePinnedTooltip@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_TopSidePinnedLabel@
* @org.eclipse.sirius.diagram.ui.provider.Messages.StraightenToAction_TopSidePinnedTooltip@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeStatusFigure_diagSynchronized@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SynchronizeStatusFigure_diagUnsynchronized@
* @org.eclipse.sirius.ui.editor.Messages.DefaultSessionEditorPage_closeSession_action_label@
* @org.eclipse.sirius.ui.editor.Messages.DefaultSessionEditorPage_closeSession_action_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalSemanticModelsHandler_addModelButton_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalSemanticModelsHandler_newModelButton_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalSemanticModelsHandler_removeModelButton_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.PluginPageProviderRegistry_badClassType@
* @org.eclipse.sirius.ui.editor.Messages.PluginPageProviderRegistry_classInitialization@
* @org.eclipse.sirius.ui.editor.Messages.SessionEditor_PageActivation_Failure@
* @org.eclipse.sirius.ui.editor.Messages.SessionEditor_PageCommand_Integrity_Error@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractExportRepresentationsAsImagesDialog_autoScaleDiagram@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractSWTCallback_DeleteRepresentationAction_message@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractSWTCallback_DeleteRepresentationAction_message_plural@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractSWTCallback_DeleteRepresentationAction_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractSWTCallback_DeleteRepresentationAction_title_plural@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_disableViewpointButton_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_enableViewpointButton_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_newRepresentationButton_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_removeRepresentationButton_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.RemoveSemanticResourceAction_Active_Representation_Message@
* @org.eclipse.sirius.viewpoint.provider.Messages.RemoveSemanticResourceAction_Controlled_Resources_Message@
* @org.eclipse.sirius.viewpoint.provider.Messages.RemoveSemanticResourceAction_Error_Removal_Title@
* @org.eclipse.sirius.viewpoint.provider.Messages.RemoveSemanticResourceAction_Not_External_Dependency_Message@
* @org.eclipse.sirius.viewpoint.provider.Messages.UpdateRepresentationsLocationHandler_errorMsg@
* @org.eclipse.sirius.viewpoint.provider.Messages.UpdateRepresentationsLocationHandler_label@
* @org.eclipse.sirius.viewpoint.Messages.DRepresentationDescriptorToDRepresentationLinkManager_repLoading@
* @org.eclipse.sirius.viewpoint.Messages.ModelOperationToTask_cannotCreateTaskWarningMsg@
* @org.eclipse.sirius.viewpoint.Messages.SessionFactoryImpl_ResourceTypeErrorMsg@

h3. Message Keys Removed

* @org.eclipse.sirius.viewpoint.provider.Messages.DeleteRepresentationAction_message@
* @org.eclipse.sirius.viewpoint.provider.Messages.DeleteRepresentationAction_message_plural@
* @org.eclipse.sirius.viewpoint.provider.Messages.DeleteRepresentationAction_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.DeleteRepresentationAction_title_plural@


h2(#sirius50). Translation Keys Changes in Sirius 5.0 (from Sirius 4.1)

h3. Message Keys Added

* @org.eclipse.sirius.common.acceleo.aql.business.Messages.AQLInterpreter_errorWithExpression@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramAppearancePreferencePage_authorizeOverlapGroupText@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramAppearancePreferencePage_decorationGroupText@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramPrintingPreferencePage_optionsGroupText@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramPrintingPreferencePage_printDecorations@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SiriusDiagramGraphicalViewer_tooltipDisplayDelay@
* @org.eclipse.sirius.ecore.extender.business.internal.Messages.PermissionService_permissionProviderInstantiationError@
* @org.eclipse.sirius.editor.properties.ext.widgets.reference.internal.Messages.DefaultReferenceDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.ext.widgets.reference.internal.Messages.DefaultReferenceDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.CategoryMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.ConditionalStyleMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.ContainerMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.CreateWidgetForAllFeaturesCommand_text@
* @org.eclipse.sirius.editor.properties.internal.Messages.CreateWidgetFromDomainClassMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.CustomExpressionMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.CustomOperationMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultBooleanDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultBooleanDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultEnumerationDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultEnumerationDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMonolineTextDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMonolineTextDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMultilineTextDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMultilineTextDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMultivaluedEAttributeDescriptionFactory_name@
* @org.eclipse.sirius.editor.properties.internal.Messages.DefaultMultivaluedEAttributeDescriptionFactory_widgetLabel@
* @org.eclipse.sirius.editor.properties.internal.Messages.DialogButtonMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.DynamicMappingMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.GroupMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.LayoutMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.OverridesMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.PageMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.PropertiesMenuBuilder_ExtendPropertiesView_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.PropertiesMenuBuilder_ImportPropertiesView_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.PropertiesMenuBuilder_NewPropertiesView_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.PropertiesMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.StyleMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.ToolbarActionMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.ValidationMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.WidgetActionMenuBuilder_label@
* @org.eclipse.sirius.editor.properties.internal.Messages.WidgetMenuBuilder_label@
* @org.eclipse.sirius.properties.core.internal.Messages.AbstractDescriptionConverter_noConverterFound@
* @org.eclipse.sirius.properties.core.internal.Messages.IDescriptionConverter_InvalidDescriptionType@
* @org.eclipse.sirius.properties.core.internal.Messages.SiriusToolServices_MainTabLabel@
* @org.eclipse.sirius.properties.defaultrules.internal.Messages.DefaultRulesProvider_DefaultPropertiesNotFound@
* @org.eclipse.sirius.properties.provider.Messages.Category__name@
* @org.eclipse.sirius.properties.provider.Messages.GridLayoutDescription__label@
* @org.eclipse.sirius.properties.provider.Messages.GroupDescription__name@
* @org.eclipse.sirius.properties.provider.Messages.PageDescription__name@
* @org.eclipse.sirius.properties.provider.Messages.ViewExtensionDescription__name@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Refresh_cancelled@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Refresh_error@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Refresh_errorDuringRefresh@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Table_LineElement@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Table_TableElement@
* @org.eclipse.sirius.table.tools.internal.Messages.TableToolVariables_LineElement@
* @org.eclipse.sirius.table.tools.internal.Messages.TableToolVariables_TableElement@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefresh_error@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefresh_refreshCancelled@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefresh_treeRefreshError@
* @org.eclipse.sirius.tree.ui.provider.Messages.SiriusTreePreferencePage_alwaysUseStandardFont@
* @org.eclipse.sirius.tree.ui.provider.Messages.SiriusTreePreferencePage_alwaysUseStandardFont_help@
* @org.eclipse.sirius.tree.ui.provider.Messages.SiriusTreePreferencePage_globalGroupName@
* @org.eclipse.sirius.ui.editor.Messages.DefaultSessionEditorPage_collapseAllAction_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.DefaultSessionEditorPage_selectFilterAction_tooltip@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalRepresentationHandler_disabledViewpoint_label@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalRepresentationHandler_missingDependencies_requirements@
* @org.eclipse.sirius.ui.editor.Messages.GraphicalRepresentationHandler_representationNumber_label@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_default_page_tab_label@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_header_title@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_inputNotHandled_error_message@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_models_button_newSemanticModel@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_models_button_removeSemanticModel@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_models_title@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_new_semantic_model_action_label@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_page_loading_error_message@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_representation_button_newRepresentation@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_representation_button_removeRepresentation@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_representation_title@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_session_loading_error_message@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_session_loading_task_title@
* @org.eclipse.sirius.ui.editor.Messages.UI_SessionEditor_viewpoints_title@
* @org.eclipse.sirius.ui.properties.internal.Messages.DialogTask_label@
* @org.eclipse.sirius.ui.properties.internal.Messages.WizardTask_label@
* @org.eclipse.sirius.ui.properties.internal.preferences.Messages.SiriusPropertiesPreferencePage_maxLengthTabName_invalidInteger@
* @org.eclipse.sirius.ui.properties.internal.preferences.Messages.SiriusPropertiesPreferencePage_maxLengthTabName_invalidValue@
* @org.eclipse.sirius.viewpoint.provider.Messages.AbstractExportRepresentationsAsImagesDialog_decorationExport@
* @org.eclipse.sirius.viewpoint.provider.Messages.CreateEMFModelWizard_errorInstantiateRootElement@
* @org.eclipse.sirius.viewpoint.provider.Messages.CreateEMFModelWizard_modelNamePrefix@
* @org.eclipse.sirius.viewpoint.provider.Messages.CreateEMFModelWizard_windowTitle@
* @org.eclipse.sirius.viewpoint.provider.Messages.DynamicViewpointsSelectionComponent_missingDependencies_requirements@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_CreateRepresentationWizard_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_activateDeactivateViewpoint_incorrectSelection_message@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_activateDeactivateViewpoint_incorrectSelection_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_activateViewpoint@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_deactivateViewpoint@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_newRepresentation@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_button_removeRepresentation@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_checkBoxGroupByRepresentationDescription_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_checkBoxGroupByViewpoint_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_disabledViewpoint_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_missingDependencies_requirements@
* @org.eclipse.sirius.viewpoint.provider.Messages.GraphicalRepresentationHandler_representationNumber_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.NameAndLocationWizardPage_description@
* @org.eclipse.sirius.viewpoint.provider.Messages.NameAndLocationWizardPage_errorMessage@
* @org.eclipse.sirius.viewpoint.provider.Messages.NameAndLocationWizardPage_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.OtherRepresentationAction_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.OtherRepresentationAction_noRepresentation_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.OtherRepresentationAction_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectEMFMetamodelWizardPage_description@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectEMFMetamodelWizardPage_documentationLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectEMFMetamodelWizardPage_metamodelLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectEMFMetamodelWizardPage_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectRootElementWizardPage_checkboxLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectRootElementWizardPage_description@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectRootElementWizardPage_label@
* @org.eclipse.sirius.viewpoint.provider.Messages.SelectRootElementWizardPage_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusPreferencePage_autoSessionEditorOpening@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusPreferencePage_sessionEditorGroup@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusRepresentationWithInactiveStatusLabelProvider_representationDescriptionItem_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusRepresentationWithInactiveStatusLabelProvider_viewpointItem_tooltip@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_confirmDependencyActivation_activateLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_confirmDependencyActivation_deactivateLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_confirmDependencyActivation_message@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_confirmDependencyActivation_title@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_missingDependency_message@
* @org.eclipse.sirius.viewpoint.provider.Messages.ViewpointSelectionCallbackWithConfimationAndDependenciesHandling_missingDependency_title@
* @org.eclipse.sirius.viewpoint.Messages.AbstractResourceStrategyImpl_methodReleaseNotHandleMsg@
* @org.eclipse.sirius.viewpoint.Messages.LetTask_label@
* @org.eclipse.sirius.viewpoint.Messages.SessionInterpreter_evaluationError@

h3. Message Keys Removed

* @org.eclipse.sirius.editor.properties.Messages.ImportingDefaultPropertiesViewDescriptionCommand_text@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Action_cancelled@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.Action_error@
* @org.eclipse.sirius.table.metamodel.table.provider.Messages.RefreshAction_errorDuringRefresh@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefreshAction_error@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefreshAction_refreshCancelled@
* @org.eclipse.sirius.tree.ui.provider.Messages.EditorRefreshAction_treeRefreshError@
* @org.eclipse.sirius.ui.properties.internal.Messages.AbstractDescriptionConverter_noConverterFound@
* @org.eclipse.sirius.ui.properties.internal.Messages.IDescriptionConverter_InvalidDescriptionType@
* @org.eclipse.sirius.ui.properties.internal.Messages.SiriusTabDescriptorProvider_DefaultPropertiesNotFound@
* @org.eclipse.sirius.ui.properties.internal.Messages.SiriusToolServices_MainTabLabel@
* @org.eclipse.sirius.viewpoint.provider.Messages.SiriusCommonLabelProvider_eClassDisabled@
