###############################################################################
# Copyright (c) 2000, 2007 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
# yyyymmdd bug      Email and other contact information
# -------- -------- -----------------------------------------------------------
# 20070820   191585 pmoogk@ca.ibm.com - Peter Moogk
# 20071102   208491 ericdp@ca.ibm.com - Eric D. Peters
###############################################################################

#
# Messages in plugin.xml.
#
PLUGIN_NAME=Web Services UI
PLUGIN_PROVIDER=Eclipse.org

PLUGIN_NEW_CATEGORY_NAME_WS=Web Services
PREFERENCE_CATEGORY_WSI=Wizard Validation

#
# Popup action Category
#
LABEL_POPUP_CATEGORY_WEB_SERVICES=Web Services
