h1. Translation Keys Changes

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

h2(#sirius632). Translation Keys Changes in Sirius 6.3.2 (from Sirius 6.3.1)

h3. Message Keys Added

* @org.eclipse.sirius.viewpoint.Messages.DRepresentationDescriptorQuery_representationError@

h2(#sirius631). Translation Keys Changes in Sirius 6.3.1 (from Sirius 6.3.0)

h3. Message Keys Added

* @org.eclipse.sirius.diagram.ui.provider.Messages.BundledImageShape_idMissing@
* @org.eclipse.sirius.diagram.ui.provider.Messages.BundledImageShape_usedByEndUser_idMissing_msg@
* @org.eclipse.sirius.diagram.ui.provider.Messages.BundledImageShape_usedInVSM_idMissing_msg@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramConnectionsPreferencePage_defaultValuesGroup_title@
* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramConnectionsPreferencePage_enableLineStyleOverride_label@
* @org.eclipse.sirius.diagram.ui.provider.Messages.SVGFigure_usingInvalidBundledImageShape@
* @org.eclipse.sirius.viewpoint.provider.Messages.LogThroughActiveDialectEditorLogListener_wrongErrorMessageProvider@

h3. Message Keys Removed

* @org.eclipse.sirius.diagram.ui.provider.Messages.DiagramConnectionsPreferencePage_enableOverrideLabel@

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@
