###############################################################################
# Copyright (c) 2011, 2014 Formal Mind GmbH, University of Duesseldorf and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     Michael Jastram - initial API and implementation
###############################################################################

pluginName = RMF ProR ID Presentation (Incubation)
providerName = Eclipse Modeling Project
_UI_CreateChild_text = {0}
_UI_CreateChild_text2 = {1} {0}
_UI_CreateChild_text3 = {1}
_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
_UI_PropertyDescriptor_description = The {0} of the {1}
_UI_Unknown_type = Object
_UI_Unknown_datatype= Value
_UI_IdConfiguration_prefix_feature = Prefix
_UI_IdConfiguration_count_feature = Count
_UI_Unknown_feature = Unspecified

_UI_ProRIdToolExtension_type = ProR Id Tool Extension
_UI_IdConfiguration_type = ID-Generator for: {0} (count: {1})
_UI_IdConfiguration_type_not_set = ID-Generator for: (PLEASE SET TYPE)
_UI_IdConfiguration_type_feature = Type
_UI_IdConfiguration_verticalAlign_feature = Vertical Align
_UI_IdVerticalAlign_Top_literal = Top
_UI_IdVerticalAlign_Center_literal = Center
_UI_XMLNamespaceDocumentRoot_type = Document Root
_UI_XMLNamespaceDocumentRoot_mixed_feature = Mixed
_UI_XMLNamespaceDocumentRoot_xMLNSPrefixMap_feature = XMLNS Prefix Map
_UI_XMLNamespaceDocumentRoot_xSISchemaLocation_feature = XSI Schema Location
_UI_XMLNamespaceDocumentRoot_base_feature = Base
_UI_XMLNamespaceDocumentRoot_id_feature = Id
_UI_XMLNamespaceDocumentRoot_lang_feature = Lang
_UI_XMLNamespaceDocumentRoot_space_feature = Space
_UI_XMLTypeDocumentRoot_comment_feature = Comment
_UI_XMLTypeDocumentRoot_text_feature = Text
_UI_XMLTypeDocumentRoot_processingInstruction_feature = Processing Instruction
_UI_SpaceType_default_literal = default
_UI_SpaceType_preserve_literal = preserve
