##
#  Copyright (c) 2009 Thales Corporate Services S.A.S.
#  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:
#      Thales Corporate Services S.A.S - initial API and implementation
##

pluginName = EGF Factory Production Edit (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_ProductionPlan_type = Production Plan
_UI_ProductionPlanInvocation_type = Invocation
_UI_FactoryComponentInvocation_type = Factory Component Invocation
_UI_TaskInvocation_type = Task Invocation
_UI_Unknown_type = Object

_UI_Unknown_datatype= Value
_UI_Unknown_feature = Unspecified

_UI_Task_type = Task
_UI_ImplementationPropertyCategory = Implementation
_UI_TaskContract_type = Task Contract
_UI_TaskContractContainer_type = Task Contract Container
_UI_Task_activityContractContainer_feature = Activity Contract Container
_UI_TaskContractContainer_activity_feature = Activity
_UI_TaskContract_activityContractContainer_feature = Activity Contract Container
_UI_TaskContractContainer_activityContracts_feature = Activity Contracts
_UI_Task_value_feature = Value
_UI_TaskProductionPropertyCategory = Task Production
