# /*******************************************************************************
#  * Copyright (c) 2002-2005 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 - Initial API and implementation
#  *******************************************************************************/

# --------------- Validation Wizard ---------------
VALIDATION_WIZARD_TITLE                = Validate WS-I Message Log File

# --------------- Validation Wizard (WSDL page) ---------------
WSDL_PAGE_FILE_SHELL_TEXT              = Select File
WSDL_PAGE_FILE_TITLE                   = Select a File
WSDL_PAGE_FILE_DESCRIPTION             = Select a file from the workbench.
WSDL_PAGE_SELECT_WSDL_FILENAME_HEADING = Include WSDL File
WSDL_PAGE_SELECT_WSDL_FILENAME_EXPL    = Optionally select a WSDL file for the Web service
WSDL_PAGE_INCLUDE_WSDL_BUTTON          = Include WSDL document for Web service
WSDL_PAGE_INCLUDE_WSDL_LABEL           = Enter the location of the WSDL document for the Web service
WSDL_PAGE_VALID_WSDL_LABEL             = *Note: You can only select the Next button if the WSDL document is valid.
WSDL_PAGE_WORKBENCH_BUTTON             = Workbench...
WSDL_PAGE_BROWSE_BUTTON                = Browse...
WSDL_PAGE_SEARCH_UDDI_BUTTON           = Search UDDI...

# --------------- Validation Wizard (WSDL content page) ---------------
WSDL_CONTENT_PAGE_SELECT_HEADING       = Specify the WSDL element to be Analyzed
WSDL_CONTENT_PAGE_SELECT_EXPL          = Indicate the name, type, and namespace of the WSDL element to be analyzed
WSDL_CONTENT_PAGE_GROUP_TEXT_ELEMENT   = The WSDL element
WSDL_CONTENT_PAGE_GROUP_TEXT_TYPE      = type
WSDL_CONTENT_PAGE_RADIO_PORT           = port
WSDL_CONTENT_PAGE_RADIO_BINDING        = binding
WSDL_CONTENT_PAGE_RADIO_PORT_TYPE      = portType
WSDL_CONTENT_PAGE_RADIO_OPERATION      = operation
WSDL_CONTENT_PAGE_RADIO_MESSAGE        = message
WSDL_CONTENT_PAGE_LABEL_NAME           = name:
WSDL_CONTENT_PAGE_LABEL_NAMESPACE      = namespace:
WSDL_CONTENT_PAGE_LABEL_PARENT         = parent:

# --------------- Validation Wizard (Log page) ---------------
LOG_PAGE_SELECT_LOG_FILENAME_HEADING   = Specify the WS-I Message Log File Name
LOG_PAGE_SELECT_LOG_FILENAME_EXPL      = Select a folder and specify a message log file name

# Actions
ACTION_WSI_VALIDATOR                   = WS-I Message Validator

# --------------- Errors ---------------
ERROR_UNABLE_TO_VALIDATE               = Unable to Validate
ERROR_VALIDATION_FAILED                = Validation Failed
ERROR_THE_WSIMSG_FILE_IS_NOT_VALID     = The WS-I Message Log file is not valid.  See the Problems view for a list of the validation errors.
ERROR_PROBLEMS_READING_WSIMSG_FILE     = Problems reading the WS-I Message Log file.  See the Problems view for a list of errors.
ERROR_INVALID_LOG_FILE_EXTENSION       = The file name extension can only be ".wsimsg".
WARNING_VALIDATION_WARNINGS_DETECTED   = However warnings have been issued. See the Problems view for a list of the validation warnings.
WARNING_FILE_ALREADY_EXISTS            = Warning: The file already exists and will be overwritten. 

# --------------- Informational messages ---------------
INFO_VALIDATION_SUCEEDED               = Validation Succeeded
INFO_THE_WSIMSG_FILE_IS_VALID          = The WS-I Message Log file is valid.
INFO_NO_MESSAGES_TO_VALIDATE           = No Messages to Validate
