###############################################################################
# Copyright (c) 2009 by SAP AG, Walldorf. 
# 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:
#     SAP AG - initial API and implementation
###############################################################################

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================
Bundle-Name.0=JAX-WS DOM UI
Bundle-Vendor.0=Eclipse Web Tools Platform

_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_IDOM_type = IDOM
_UI_IJavaWebServiceElement_type = Java Web Service Element
_UI_IServiceEndpointInterface_type = Service Endpoint Interface
_UI_IWebService_type = Web Service
_UI_IWebServiceProject_type = Web Service Project
_UI_Unknown_type = Object

_UI_Unknown_datatype= Value

_UI_IDOM_webServiceProjects_feature = Web Service Projects
_UI_IJavaWebServiceElement_javaImplementation_feature = Java Implementation
_UI_IServiceEndpointInterface_name_feature = Name
_UI_IServiceEndpointInterface_implicit_feature = Implicit
_UI_IServiceEndpointInterface_implementingWebServices_feature = Implementing Web Services
_UI_IServiceEndpointInterface_targetNamespace_feature = Target Namespace
_UI_IServiceEndpointInterface_soapBinding = SOAP Binding
_UI_IWebService_name_feature = Name
_UI_IWebService_serviceEndpoint_feature = Service Endpoint
_UI_IWebService_targetNamespace_feature = Target Namespace
_UI_IWebService_portName_feature		= Port Name
_UI_IWebService_wsdlLocation_feature	= WSDL Location
_UI_IWebServiceProject_webServices_feature = Web Services
_UI_IWebServiceProject_serviceEndpointInterfaces_feature = Service Endpoint Interfaces
_UI_IWebServiceProject_name_feature = Name
_UI_Unknown_feature = Unspecified

_UI_WebServiceAnnotationCategory = General (WebService annotation)
_UI_WebMethodAnnotationCategory = General (WebMethod annotation)
_UI_WebParamAnnotationCategory = General (WebParam annotation)

_UI_IJavaWebServiceElement_implementation_feature = Java representation
_UI_IWebMethod_type = Web Method
_UI_IWebParam_type = Web Param
_UI_IWebType_type = Web Type
_UI_IJavaWebServiceElement_name_feature = Name
_UI_IWebMethod_excluded_feature = Excluded
_UI_IWebParam_kind_feature = Mode
_UI_IServiceEndpointInterface_webMethods_feature = Web Methods
_UI_IWebMethod_parameters_feature = Parameters
_UI_IWebParam_typeName_feature = Type Name
_UI_IWebParam_partName_feature = Part Name
_UI_IWebParam_targetNamespace_feature = Target Namespace
_UI_IWebParam_header_feature = Header
_UI_IServiceEndpointInterface_soapBindingStyle_feature = Style
_UI_IServiceEndpointInterface_soapBindingUse_feature = Use
_UI_IServiceEndpointInterface_soapBindingParameterStyle_feature = Parameter Style
_UI_IWebMethod_soapBindingStyle_feature = Style
_UI_IWebMethod_soapBindingUse_feature = Use
_UI_IWebMethod_soapBindingParameterStyle_feature = Parameter Style
