# /**
#  * <copyright>
#  *
#  * 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
#  *
#  * </copyright>
#  */

#
# Analyzer resource bundle.
#
usage01=Usage: Analyzer -config <configFilename>
created01=Conformance report has been created.
progress01=Please wait while the specified artifacts are analyzed...
error01=Analyzer Error:
error02=Analyzer Stopped By Exception:
error03=The conformance validation process failed.
exception01=Exception:
config01=Analyzer configuration file was not found.  Specified file location:
config02=Could not find log file.  Specified file location:
config03=Could not find WSDL file.  Specified file location:
config04=Can not specify both the WSDL reference and UDDI reference options.
config05=WSDL document was either not found or could not be processed.
config06=Invalid analyzer configuration element:
config07=Both the <wsdlElement> and <wsdlURI> elements must be specified.
config08=Could not read analyzer configuration file.  Specified file location:
config09=The parentElementName attribute must be specified with a WSDL type of port or operation.
config10=The -wsdlElement option must appear after the -wsdlURI or -uddiKey options.
config11=The -serviceLocation option must appear after the -wsdlURI or -uddiKey options.
config12=The specified option is not supported:
config13=Option did not contain a value.  Specified option:
config14=Could not find test assertion document.  Specified file location:
config15=Report file already exists and replace option was not specified.
config16=Test assertion document location must be specified.
config17=Could not get report file location.
config18=Invalid correlation type specified.
config19=The WSDL element name must be specified.
