###############################################################################
# Copyright (c) 2008, 2012 IBM Corporation 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:
#     IBM Corporation - initial API and implementation
###############################################################################
NewFileWizard_1=New BPEL Process
NewFileWizardPage1_2=Create a BPEL Process File
NewFileWizardPage1_3=Create a new BPEL file (BPEL 2.0).
NewFileWizardPage1_5=Process Name:
NewFileWizardPage1_6=Namespace:
NewFileWizardPage1_7=Template:
NewFileWizardPage2_0=Select location for the BPEL source files.
NewFileWizardPage2_3=Select Files Location
NewFileWizard_WSDLCustomPage_Title=Use a Creation Template
NewFileWizard_WSDLCustomPage_Description=Create a BPEL process from a template.
NewFileWizard_WSDLCustomPage_ServiceLable=Service Name:
NewFileWizard_WSDLCustomPage_PortLabel=Port Name:
NewFileWizard_WSDLCustomPage_AddressLabel=Service Address:
NewFileWizard_WSDLCustomPage_BindingLabel=Binding Protocol:
NewFileWizard_Not_A_BPELFaceted_Project=The selected location is not a BPEL project.
NewFileWizard_Not_A_BPELContent_Folder=The selected location is not a BPEL Content folder.
BPELCreateOperation_0=Creating process from template ...
CreatePartnerLinkWizard_0=Create Partner Link Type
CreatePartnerLinkWizard_2=Create new Partner Link Type
CreatePartnerLinkWizard_3=Type in the name of the partner link type.
CreatePartnerLinkWizard_5=Create new Partner Link Type
CreatePartnerLinkWizard_6=Define the 1st Role of this Partner Link Type.
CreatePartnerLinkWizard_8=Create new Partner Link Type
CreatePartnerLinkWizard_9=Define the 2nd Role of this Partner Link Type (Optional)
CreatePartnerLinkTypeWizardRolePage_0=Role Name:
CreatePartnerLinkTypeWizardRolePage_1=Port Type:
CreatePartnerLinkTypeWizardRolePage_2=This role will be undefined.
CreatePartnerLinkTypeWizardRolePage_3=Port type must be selected.
CreatePartnerLinkTypeWizardRolePage_4=The role names must have different names.
CreatePartnerLinkTypeWizardNamePage_0=Create new Partner Link Type
CreatePartnerLinkTypeWizardNamePage_1=Type in the name of the partner link type.
CreatePartnerLinkTypeWizardNamePage_2=Partner Link Type Name:
CreatePartnerLinkTypeWizardNamePage_3=Hint: The name of the partner link must be a valid NCName (Non-Qualified Name).
CreatePartnerLinkTypeWizardNamePage_4=Partner Link Type name is already used.
