1/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the  "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18/*
19 * $Id: XSLTErrorResources.java 468641 2006-10-28 06:54:42Z minchau $
20 */
21package org.apache.xalan.res;
22
23import java.util.ListResourceBundle;
24import java.util.Locale;
25import java.util.MissingResourceException;
26import java.util.ResourceBundle;
27
28/**
29 * Set up error messages.
30 * We build a two dimensional array of message keys and
31 * message strings. In order to add a new message here,
32 * you need to first add a String constant. And
33 *  you need to enter key , value pair as part of contents
34 * Array. You also need to update MAX_CODE for error strings
35 * and MAX_WARNING for warnings ( Needed for only information
36 * purpose )
37 */
38public class XSLTErrorResources extends ListResourceBundle
39{
40
41/*
42 * This file contains error and warning messages related to Xalan Error
43 * Handling.
44 *
45 *  General notes to translators:
46 *
47 *  1) Xalan (or more properly, Xalan-interpretive) and XSLTC are names of
48 *     components.
49 *     XSLT is an acronym for "XML Stylesheet Language: Transformations".
50 *     XSLTC is an acronym for XSLT Compiler.
51 *
52 *  2) A stylesheet is a description of how to transform an input XML document
53 *     into a resultant XML document (or HTML document or text).  The
54 *     stylesheet itself is described in the form of an XML document.
55 *
56 *  3) A template is a component of a stylesheet that is used to match a
57 *     particular portion of an input document and specifies the form of the
58 *     corresponding portion of the output document.
59 *
60 *  4) An element is a mark-up tag in an XML document; an attribute is a
61 *     modifier on the tag.  For example, in <elem attr='val' attr2='val2'>
62 *     "elem" is an element name, "attr" and "attr2" are attribute names with
63 *     the values "val" and "val2", respectively.
64 *
65 *  5) A namespace declaration is a special attribute that is used to associate
66 *     a prefix with a URI (the namespace).  The meanings of element names and
67 *     attribute names that use that prefix are defined with respect to that
68 *     namespace.
69 *
70 *  6) "Translet" is an invented term that describes the class file that
71 *     results from compiling an XML stylesheet into a Java class.
72 *
73 *  7) XPath is a specification that describes a notation for identifying
74 *     nodes in a tree-structured representation of an XML document.  An
75 *     instance of that notation is referred to as an XPath expression.
76 *
77 */
78
79  /*
80   * Static variables
81   */
82  public static final String ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX =
83	"ER_INVALID_SET_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX";
84
85  public static final String ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX_FOR_DEFAULT =
86	"ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX_FOR_DEFAULT";
87
88  public static final String ER_NO_CURLYBRACE = "ER_NO_CURLYBRACE";
89  public static final String ER_FUNCTION_NOT_SUPPORTED = "ER_FUNCTION_NOT_SUPPORTED";
90  public static final String ER_ILLEGAL_ATTRIBUTE = "ER_ILLEGAL_ATTRIBUTE";
91  public static final String ER_NULL_SOURCENODE_APPLYIMPORTS = "ER_NULL_SOURCENODE_APPLYIMPORTS";
92  public static final String ER_CANNOT_ADD = "ER_CANNOT_ADD";
93  public static final String ER_NULL_SOURCENODE_HANDLEAPPLYTEMPLATES="ER_NULL_SOURCENODE_HANDLEAPPLYTEMPLATES";
94  public static final String ER_NO_NAME_ATTRIB = "ER_NO_NAME_ATTRIB";
95  public static final String ER_TEMPLATE_NOT_FOUND = "ER_TEMPLATE_NOT_FOUND";
96  public static final String ER_CANT_RESOLVE_NAME_AVT = "ER_CANT_RESOLVE_NAME_AVT";
97  public static final String ER_REQUIRES_ATTRIB = "ER_REQUIRES_ATTRIB";
98  public static final String ER_MUST_HAVE_TEST_ATTRIB = "ER_MUST_HAVE_TEST_ATTRIB";
99  public static final String ER_BAD_VAL_ON_LEVEL_ATTRIB =
100	 "ER_BAD_VAL_ON_LEVEL_ATTRIB";
101  public static final String ER_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML =
102	 "ER_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML";
103  public static final String ER_PROCESSINGINSTRUCTION_NOTVALID_NCNAME =
104	 "ER_PROCESSINGINSTRUCTION_NOTVALID_NCNAME";
105  public static final String ER_NEED_MATCH_ATTRIB = "ER_NEED_MATCH_ATTRIB";
106  public static final String ER_NEED_NAME_OR_MATCH_ATTRIB =
107	 "ER_NEED_NAME_OR_MATCH_ATTRIB";
108  public static final String ER_CANT_RESOLVE_NSPREFIX =
109	 "ER_CANT_RESOLVE_NSPREFIX";
110  public static final String ER_ILLEGAL_VALUE = "ER_ILLEGAL_VALUE";
111  public static final String ER_NO_OWNERDOC = "ER_NO_OWNERDOC";
112  public static final String ER_ELEMTEMPLATEELEM_ERR ="ER_ELEMTEMPLATEELEM_ERR";
113  public static final String ER_NULL_CHILD = "ER_NULL_CHILD";
114  public static final String ER_NEED_SELECT_ATTRIB = "ER_NEED_SELECT_ATTRIB";
115  public static final String ER_NEED_TEST_ATTRIB = "ER_NEED_TEST_ATTRIB";
116  public static final String ER_NEED_NAME_ATTRIB = "ER_NEED_NAME_ATTRIB";
117  public static final String ER_NO_CONTEXT_OWNERDOC = "ER_NO_CONTEXT_OWNERDOC";
118  public static final String ER_COULD_NOT_CREATE_XML_PROC_LIAISON =
119	 "ER_COULD_NOT_CREATE_XML_PROC_LIAISON";
120  public static final String ER_PROCESS_NOT_SUCCESSFUL =
121	 "ER_PROCESS_NOT_SUCCESSFUL";
122  public static final String ER_NOT_SUCCESSFUL = "ER_NOT_SUCCESSFUL";
123  public static final String ER_ENCODING_NOT_SUPPORTED =
124	 "ER_ENCODING_NOT_SUPPORTED";
125  public static final String ER_COULD_NOT_CREATE_TRACELISTENER =
126	 "ER_COULD_NOT_CREATE_TRACELISTENER";
127  public static final String ER_KEY_REQUIRES_NAME_ATTRIB =
128	 "ER_KEY_REQUIRES_NAME_ATTRIB";
129  public static final String ER_KEY_REQUIRES_MATCH_ATTRIB =
130	 "ER_KEY_REQUIRES_MATCH_ATTRIB";
131  public static final String ER_KEY_REQUIRES_USE_ATTRIB =
132	 "ER_KEY_REQUIRES_USE_ATTRIB";
133  public static final String ER_REQUIRES_ELEMENTS_ATTRIB =
134	 "ER_REQUIRES_ELEMENTS_ATTRIB";
135  public static final String ER_MISSING_PREFIX_ATTRIB =
136	 "ER_MISSING_PREFIX_ATTRIB";
137  public static final String ER_BAD_STYLESHEET_URL = "ER_BAD_STYLESHEET_URL";
138  public static final String ER_FILE_NOT_FOUND = "ER_FILE_NOT_FOUND";
139  public static final String ER_IOEXCEPTION = "ER_IOEXCEPTION";
140  public static final String ER_NO_HREF_ATTRIB = "ER_NO_HREF_ATTRIB";
141  public static final String ER_STYLESHEET_INCLUDES_ITSELF =
142	 "ER_STYLESHEET_INCLUDES_ITSELF";
143  public static final String ER_PROCESSINCLUDE_ERROR ="ER_PROCESSINCLUDE_ERROR";
144  public static final String ER_MISSING_LANG_ATTRIB = "ER_MISSING_LANG_ATTRIB";
145  public static final String ER_MISSING_CONTAINER_ELEMENT_COMPONENT =
146	 "ER_MISSING_CONTAINER_ELEMENT_COMPONENT";
147  public static final String ER_CAN_ONLY_OUTPUT_TO_ELEMENT =
148	 "ER_CAN_ONLY_OUTPUT_TO_ELEMENT";
149  public static final String ER_PROCESS_ERROR = "ER_PROCESS_ERROR";
150  public static final String ER_UNIMPLNODE_ERROR = "ER_UNIMPLNODE_ERROR";
151  public static final String ER_NO_SELECT_EXPRESSION ="ER_NO_SELECT_EXPRESSION";
152  public static final String ER_CANNOT_SERIALIZE_XSLPROCESSOR =
153	 "ER_CANNOT_SERIALIZE_XSLPROCESSOR";
154  public static final String ER_NO_INPUT_STYLESHEET = "ER_NO_INPUT_STYLESHEET";
155  public static final String ER_FAILED_PROCESS_STYLESHEET =
156	 "ER_FAILED_PROCESS_STYLESHEET";
157  public static final String ER_COULDNT_PARSE_DOC = "ER_COULDNT_PARSE_DOC";
158  public static final String ER_COULDNT_FIND_FRAGMENT =
159	 "ER_COULDNT_FIND_FRAGMENT";
160  public static final String ER_NODE_NOT_ELEMENT = "ER_NODE_NOT_ELEMENT";
161  public static final String ER_FOREACH_NEED_MATCH_OR_NAME_ATTRIB =
162	 "ER_FOREACH_NEED_MATCH_OR_NAME_ATTRIB";
163  public static final String ER_TEMPLATES_NEED_MATCH_OR_NAME_ATTRIB =
164	 "ER_TEMPLATES_NEED_MATCH_OR_NAME_ATTRIB";
165  public static final String ER_NO_CLONE_OF_DOCUMENT_FRAG =
166	 "ER_NO_CLONE_OF_DOCUMENT_FRAG";
167  public static final String ER_CANT_CREATE_ITEM = "ER_CANT_CREATE_ITEM";
168  public static final String ER_XMLSPACE_ILLEGAL_VALUE =
169	 "ER_XMLSPACE_ILLEGAL_VALUE";
170  public static final String ER_NO_XSLKEY_DECLARATION =
171	 "ER_NO_XSLKEY_DECLARATION";
172  public static final String ER_CANT_CREATE_URL = "ER_CANT_CREATE_URL";
173  public static final String ER_XSLFUNCTIONS_UNSUPPORTED =
174	 "ER_XSLFUNCTIONS_UNSUPPORTED";
175  public static final String ER_PROCESSOR_ERROR = "ER_PROCESSOR_ERROR";
176  public static final String ER_NOT_ALLOWED_INSIDE_STYLESHEET =
177	 "ER_NOT_ALLOWED_INSIDE_STYLESHEET";
178  public static final String ER_RESULTNS_NOT_SUPPORTED =
179	 "ER_RESULTNS_NOT_SUPPORTED";
180  public static final String ER_DEFAULTSPACE_NOT_SUPPORTED =
181	 "ER_DEFAULTSPACE_NOT_SUPPORTED";
182  public static final String ER_INDENTRESULT_NOT_SUPPORTED =
183	 "ER_INDENTRESULT_NOT_SUPPORTED";
184  public static final String ER_ILLEGAL_ATTRIB = "ER_ILLEGAL_ATTRIB";
185  public static final String ER_UNKNOWN_XSL_ELEM = "ER_UNKNOWN_XSL_ELEM";
186  public static final String ER_BAD_XSLSORT_USE = "ER_BAD_XSLSORT_USE";
187  public static final String ER_MISPLACED_XSLWHEN = "ER_MISPLACED_XSLWHEN";
188  public static final String ER_XSLWHEN_NOT_PARENTED_BY_XSLCHOOSE =
189	 "ER_XSLWHEN_NOT_PARENTED_BY_XSLCHOOSE";
190  public static final String ER_MISPLACED_XSLOTHERWISE =
191	 "ER_MISPLACED_XSLOTHERWISE";
192  public static final String ER_XSLOTHERWISE_NOT_PARENTED_BY_XSLCHOOSE =
193	 "ER_XSLOTHERWISE_NOT_PARENTED_BY_XSLCHOOSE";
194  public static final String ER_NOT_ALLOWED_INSIDE_TEMPLATE =
195	 "ER_NOT_ALLOWED_INSIDE_TEMPLATE";
196  public static final String ER_UNKNOWN_EXT_NS_PREFIX =
197	 "ER_UNKNOWN_EXT_NS_PREFIX";
198  public static final String ER_IMPORTS_AS_FIRST_ELEM =
199	 "ER_IMPORTS_AS_FIRST_ELEM";
200  public static final String ER_IMPORTING_ITSELF = "ER_IMPORTING_ITSELF";
201  public static final String ER_XMLSPACE_ILLEGAL_VAL ="ER_XMLSPACE_ILLEGAL_VAL";
202  public static final String ER_PROCESSSTYLESHEET_NOT_SUCCESSFUL =
203	 "ER_PROCESSSTYLESHEET_NOT_SUCCESSFUL";
204  public static final String ER_SAX_EXCEPTION = "ER_SAX_EXCEPTION";
205  public static final String ER_XSLT_ERROR = "ER_XSLT_ERROR";
206  public static final String ER_CURRENCY_SIGN_ILLEGAL=
207	 "ER_CURRENCY_SIGN_ILLEGAL";
208  public static final String ER_DOCUMENT_FUNCTION_INVALID_IN_STYLESHEET_DOM =
209	 "ER_DOCUMENT_FUNCTION_INVALID_IN_STYLESHEET_DOM";
210  public static final String ER_CANT_RESOLVE_PREFIX_OF_NON_PREFIX_RESOLVER =
211	 "ER_CANT_RESOLVE_PREFIX_OF_NON_PREFIX_RESOLVER";
212  public static final String ER_REDIRECT_COULDNT_GET_FILENAME =
213	 "ER_REDIRECT_COULDNT_GET_FILENAME";
214  public static final String ER_CANNOT_BUILD_FORMATTERLISTENER_IN_REDIRECT =
215	 "ER_CANNOT_BUILD_FORMATTERLISTENER_IN_REDIRECT";
216  public static final String ER_INVALID_PREFIX_IN_EXCLUDERESULTPREFIX =
217	 "ER_INVALID_PREFIX_IN_EXCLUDERESULTPREFIX";
218  public static final String ER_MISSING_NS_URI = "ER_MISSING_NS_URI";
219  public static final String ER_MISSING_ARG_FOR_OPTION =
220	 "ER_MISSING_ARG_FOR_OPTION";
221  public static final String ER_INVALID_OPTION = "ER_INVALID_OPTION";
222  public static final String ER_MALFORMED_FORMAT_STRING =
223	 "ER_MALFORMED_FORMAT_STRING";
224  public static final String ER_STYLESHEET_REQUIRES_VERSION_ATTRIB =
225	 "ER_STYLESHEET_REQUIRES_VERSION_ATTRIB";
226  public static final String ER_ILLEGAL_ATTRIBUTE_VALUE =
227	 "ER_ILLEGAL_ATTRIBUTE_VALUE";
228  public static final String ER_CHOOSE_REQUIRES_WHEN ="ER_CHOOSE_REQUIRES_WHEN";
229  public static final String ER_NO_APPLY_IMPORT_IN_FOR_EACH =
230	 "ER_NO_APPLY_IMPORT_IN_FOR_EACH";
231  public static final String ER_CANT_USE_DTM_FOR_OUTPUT =
232	 "ER_CANT_USE_DTM_FOR_OUTPUT";
233  public static final String ER_CANT_USE_DTM_FOR_INPUT =
234	 "ER_CANT_USE_DTM_FOR_INPUT";
235  public static final String ER_CALL_TO_EXT_FAILED = "ER_CALL_TO_EXT_FAILED";
236  public static final String ER_PREFIX_MUST_RESOLVE = "ER_PREFIX_MUST_RESOLVE";
237  public static final String ER_INVALID_UTF16_SURROGATE =
238	 "ER_INVALID_UTF16_SURROGATE";
239  public static final String ER_XSLATTRSET_USED_ITSELF =
240	 "ER_XSLATTRSET_USED_ITSELF";
241  public static final String ER_CANNOT_MIX_XERCESDOM ="ER_CANNOT_MIX_XERCESDOM";
242  public static final String ER_TOO_MANY_LISTENERS = "ER_TOO_MANY_LISTENERS";
243  public static final String ER_IN_ELEMTEMPLATEELEM_READOBJECT =
244	 "ER_IN_ELEMTEMPLATEELEM_READOBJECT";
245  public static final String ER_DUPLICATE_NAMED_TEMPLATE =
246	 "ER_DUPLICATE_NAMED_TEMPLATE";
247  public static final String ER_INVALID_KEY_CALL = "ER_INVALID_KEY_CALL";
248  public static final String ER_REFERENCING_ITSELF = "ER_REFERENCING_ITSELF";
249  public static final String ER_ILLEGAL_DOMSOURCE_INPUT =
250	 "ER_ILLEGAL_DOMSOURCE_INPUT";
251  public static final String ER_CLASS_NOT_FOUND_FOR_OPTION =
252	 "ER_CLASS_NOT_FOUND_FOR_OPTION";
253  public static final String ER_REQUIRED_ELEM_NOT_FOUND =
254	 "ER_REQUIRED_ELEM_NOT_FOUND";
255  public static final String ER_INPUT_CANNOT_BE_NULL ="ER_INPUT_CANNOT_BE_NULL";
256  public static final String ER_URI_CANNOT_BE_NULL = "ER_URI_CANNOT_BE_NULL";
257  public static final String ER_FILE_CANNOT_BE_NULL = "ER_FILE_CANNOT_BE_NULL";
258  public static final String ER_SOURCE_CANNOT_BE_NULL =
259	 "ER_SOURCE_CANNOT_BE_NULL";
260  public static final String ER_CANNOT_INIT_BSFMGR = "ER_CANNOT_INIT_BSFMGR";
261  public static final String ER_CANNOT_CMPL_EXTENSN = "ER_CANNOT_CMPL_EXTENSN";
262  public static final String ER_CANNOT_CREATE_EXTENSN =
263	 "ER_CANNOT_CREATE_EXTENSN";
264  public static final String ER_INSTANCE_MTHD_CALL_REQUIRES =
265	 "ER_INSTANCE_MTHD_CALL_REQUIRES";
266  public static final String ER_INVALID_ELEMENT_NAME ="ER_INVALID_ELEMENT_NAME";
267  public static final String ER_ELEMENT_NAME_METHOD_STATIC =
268	 "ER_ELEMENT_NAME_METHOD_STATIC";
269  public static final String ER_EXTENSION_FUNC_UNKNOWN =
270	 "ER_EXTENSION_FUNC_UNKNOWN";
271  public static final String ER_MORE_MATCH_CONSTRUCTOR =
272	 "ER_MORE_MATCH_CONSTRUCTOR";
273  public static final String ER_MORE_MATCH_METHOD = "ER_MORE_MATCH_METHOD";
274  public static final String ER_MORE_MATCH_ELEMENT = "ER_MORE_MATCH_ELEMENT";
275  public static final String ER_INVALID_CONTEXT_PASSED =
276	 "ER_INVALID_CONTEXT_PASSED";
277  public static final String ER_POOL_EXISTS = "ER_POOL_EXISTS";
278  public static final String ER_NO_DRIVER_NAME = "ER_NO_DRIVER_NAME";
279  public static final String ER_NO_URL = "ER_NO_URL";
280  public static final String ER_POOL_SIZE_LESSTHAN_ONE =
281	 "ER_POOL_SIZE_LESSTHAN_ONE";
282  public static final String ER_INVALID_DRIVER = "ER_INVALID_DRIVER";
283  public static final String ER_NO_STYLESHEETROOT = "ER_NO_STYLESHEETROOT";
284  public static final String ER_ILLEGAL_XMLSPACE_VALUE =
285	 "ER_ILLEGAL_XMLSPACE_VALUE";
286  public static final String ER_PROCESSFROMNODE_FAILED =
287	 "ER_PROCESSFROMNODE_FAILED";
288  public static final String ER_RESOURCE_COULD_NOT_LOAD =
289	 "ER_RESOURCE_COULD_NOT_LOAD";
290  public static final String ER_BUFFER_SIZE_LESSTHAN_ZERO =
291	 "ER_BUFFER_SIZE_LESSTHAN_ZERO";
292  public static final String ER_UNKNOWN_ERROR_CALLING_EXTENSION =
293	 "ER_UNKNOWN_ERROR_CALLING_EXTENSION";
294  public static final String ER_NO_NAMESPACE_DECL = "ER_NO_NAMESPACE_DECL";
295  public static final String ER_ELEM_CONTENT_NOT_ALLOWED =
296	 "ER_ELEM_CONTENT_NOT_ALLOWED";
297  public static final String ER_STYLESHEET_DIRECTED_TERMINATION =
298	 "ER_STYLESHEET_DIRECTED_TERMINATION";
299  public static final String ER_ONE_OR_TWO = "ER_ONE_OR_TWO";
300  public static final String ER_TWO_OR_THREE = "ER_TWO_OR_THREE";
301  public static final String ER_COULD_NOT_LOAD_RESOURCE =
302	 "ER_COULD_NOT_LOAD_RESOURCE";
303  public static final String ER_CANNOT_INIT_DEFAULT_TEMPLATES =
304	 "ER_CANNOT_INIT_DEFAULT_TEMPLATES";
305  public static final String ER_RESULT_NULL = "ER_RESULT_NULL";
306  public static final String ER_RESULT_COULD_NOT_BE_SET =
307	 "ER_RESULT_COULD_NOT_BE_SET";
308  public static final String ER_NO_OUTPUT_SPECIFIED = "ER_NO_OUTPUT_SPECIFIED";
309  public static final String ER_CANNOT_TRANSFORM_TO_RESULT_TYPE =
310	 "ER_CANNOT_TRANSFORM_TO_RESULT_TYPE";
311  public static final String ER_CANNOT_TRANSFORM_SOURCE_TYPE =
312	 "ER_CANNOT_TRANSFORM_SOURCE_TYPE";
313  public static final String ER_NULL_CONTENT_HANDLER ="ER_NULL_CONTENT_HANDLER";
314  public static final String ER_NULL_ERROR_HANDLER = "ER_NULL_ERROR_HANDLER";
315  public static final String ER_CANNOT_CALL_PARSE = "ER_CANNOT_CALL_PARSE";
316  public static final String ER_NO_PARENT_FOR_FILTER ="ER_NO_PARENT_FOR_FILTER";
317  public static final String ER_NO_STYLESHEET_IN_MEDIA =
318	 "ER_NO_STYLESHEET_IN_MEDIA";
319  public static final String ER_NO_STYLESHEET_PI = "ER_NO_STYLESHEET_PI";
320  public static final String ER_NOT_SUPPORTED = "ER_NOT_SUPPORTED";
321  public static final String ER_PROPERTY_VALUE_BOOLEAN =
322	 "ER_PROPERTY_VALUE_BOOLEAN";
323  public static final String ER_COULD_NOT_FIND_EXTERN_SCRIPT =
324	 "ER_COULD_NOT_FIND_EXTERN_SCRIPT";
325  public static final String ER_RESOURCE_COULD_NOT_FIND =
326	 "ER_RESOURCE_COULD_NOT_FIND";
327  public static final String ER_OUTPUT_PROPERTY_NOT_RECOGNIZED =
328	 "ER_OUTPUT_PROPERTY_NOT_RECOGNIZED";
329  public static final String ER_FAILED_CREATING_ELEMLITRSLT =
330	 "ER_FAILED_CREATING_ELEMLITRSLT";
331  public static final String ER_VALUE_SHOULD_BE_NUMBER =
332	 "ER_VALUE_SHOULD_BE_NUMBER";
333  public static final String ER_VALUE_SHOULD_EQUAL = "ER_VALUE_SHOULD_EQUAL";
334  public static final String ER_FAILED_CALLING_METHOD =
335	 "ER_FAILED_CALLING_METHOD";
336  public static final String ER_FAILED_CREATING_ELEMTMPL =
337	 "ER_FAILED_CREATING_ELEMTMPL";
338  public static final String ER_CHARS_NOT_ALLOWED = "ER_CHARS_NOT_ALLOWED";
339  public static final String ER_ATTR_NOT_ALLOWED = "ER_ATTR_NOT_ALLOWED";
340  public static final String ER_BAD_VALUE = "ER_BAD_VALUE";
341  public static final String ER_ATTRIB_VALUE_NOT_FOUND =
342	 "ER_ATTRIB_VALUE_NOT_FOUND";
343  public static final String ER_ATTRIB_VALUE_NOT_RECOGNIZED =
344	 "ER_ATTRIB_VALUE_NOT_RECOGNIZED";
345  public static final String ER_NULL_URI_NAMESPACE = "ER_NULL_URI_NAMESPACE";
346  public static final String ER_NUMBER_TOO_BIG = "ER_NUMBER_TOO_BIG";
347  public static final String  ER_CANNOT_FIND_SAX1_DRIVER =
348	 "ER_CANNOT_FIND_SAX1_DRIVER";
349  public static final String  ER_SAX1_DRIVER_NOT_LOADED =
350	 "ER_SAX1_DRIVER_NOT_LOADED";
351  public static final String  ER_SAX1_DRIVER_NOT_INSTANTIATED =
352	 "ER_SAX1_DRIVER_NOT_INSTANTIATED" ;
353  public static final String ER_SAX1_DRIVER_NOT_IMPLEMENT_PARSER =
354	 "ER_SAX1_DRIVER_NOT_IMPLEMENT_PARSER";
355  public static final String  ER_PARSER_PROPERTY_NOT_SPECIFIED =
356	 "ER_PARSER_PROPERTY_NOT_SPECIFIED";
357  public static final String  ER_PARSER_ARG_CANNOT_BE_NULL =
358	 "ER_PARSER_ARG_CANNOT_BE_NULL" ;
359  public static final String  ER_FEATURE = "ER_FEATURE";
360  public static final String ER_PROPERTY = "ER_PROPERTY" ;
361  public static final String ER_NULL_ENTITY_RESOLVER ="ER_NULL_ENTITY_RESOLVER";
362  public static final String  ER_NULL_DTD_HANDLER = "ER_NULL_DTD_HANDLER" ;
363  public static final String ER_NO_DRIVER_NAME_SPECIFIED =
364	 "ER_NO_DRIVER_NAME_SPECIFIED";
365  public static final String ER_NO_URL_SPECIFIED = "ER_NO_URL_SPECIFIED";
366  public static final String ER_POOLSIZE_LESS_THAN_ONE =
367	 "ER_POOLSIZE_LESS_THAN_ONE";
368  public static final String ER_INVALID_DRIVER_NAME = "ER_INVALID_DRIVER_NAME";
369  public static final String ER_ERRORLISTENER = "ER_ERRORLISTENER";
370  public static final String ER_ASSERT_NO_TEMPLATE_PARENT =
371	 "ER_ASSERT_NO_TEMPLATE_PARENT";
372  public static final String ER_ASSERT_REDUNDENT_EXPR_ELIMINATOR =
373	 "ER_ASSERT_REDUNDENT_EXPR_ELIMINATOR";
374  public static final String ER_NOT_ALLOWED_IN_POSITION =
375	 "ER_NOT_ALLOWED_IN_POSITION";
376  public static final String ER_NONWHITESPACE_NOT_ALLOWED_IN_POSITION =
377	 "ER_NONWHITESPACE_NOT_ALLOWED_IN_POSITION";
378  public static final String ER_NAMESPACE_CONTEXT_NULL_NAMESPACE =
379  	 "ER_NAMESPACE_CONTEXT_NULL_NAMESPACE";
380  public static final String ER_NAMESPACE_CONTEXT_NULL_PREFIX =
381 	 "ER_NAMESPACE_CONTEXT_NULL_PREFIX";
382  public static final String ER_XPATH_RESOLVER_NULL_QNAME =
383	 "ER_XPATH_RESOLVER_NULL_QNAME";
384  public static final String ER_XPATH_RESOLVER_NEGATIVE_ARITY =
385	 "ER_XPATH_RESOLVER_NEGATIVE_ARITY";
386  public static final String INVALID_TCHAR = "INVALID_TCHAR";
387  public static final String INVALID_QNAME = "INVALID_QNAME";
388  public static final String INVALID_ENUM = "INVALID_ENUM";
389  public static final String INVALID_NMTOKEN = "INVALID_NMTOKEN";
390  public static final String INVALID_NCNAME = "INVALID_NCNAME";
391  public static final String INVALID_BOOLEAN = "INVALID_BOOLEAN";
392  public static final String INVALID_NUMBER = "INVALID_NUMBER";
393  public static final String ER_ARG_LITERAL = "ER_ARG_LITERAL";
394  public static final String ER_DUPLICATE_GLOBAL_VAR ="ER_DUPLICATE_GLOBAL_VAR";
395  public static final String ER_DUPLICATE_VAR = "ER_DUPLICATE_VAR";
396  public static final String ER_TEMPLATE_NAME_MATCH = "ER_TEMPLATE_NAME_MATCH";
397  public static final String ER_INVALID_PREFIX = "ER_INVALID_PREFIX";
398  public static final String ER_NO_ATTRIB_SET = "ER_NO_ATTRIB_SET";
399  public static final String ER_FUNCTION_NOT_FOUND =
400	 "ER_FUNCTION_NOT_FOUND";
401  public static final String ER_CANT_HAVE_CONTENT_AND_SELECT =
402     "ER_CANT_HAVE_CONTENT_AND_SELECT";
403  public static final String ER_INVALID_SET_PARAM_VALUE = "ER_INVALID_SET_PARAM_VALUE";
404  public static final String ER_SET_FEATURE_NULL_NAME =
405  	"ER_SET_FEATURE_NULL_NAME";
406  public static final String ER_GET_FEATURE_NULL_NAME =
407  	"ER_GET_FEATURE_NULL_NAME";
408  public static final String ER_UNSUPPORTED_FEATURE =
409  	"ER_UNSUPPORTED_FEATURE";
410  public static final String ER_EXTENSION_ELEMENT_NOT_ALLOWED_IN_SECURE_PROCESSING =
411  	"ER_EXTENSION_ELEMENT_NOT_ALLOWED_IN_SECURE_PROCESSING";
412
413  public static final String WG_FOUND_CURLYBRACE = "WG_FOUND_CURLYBRACE";
414  public static final String WG_COUNT_ATTRIB_MATCHES_NO_ANCESTOR =
415	 "WG_COUNT_ATTRIB_MATCHES_NO_ANCESTOR";
416  public static final String WG_EXPR_ATTRIB_CHANGED_TO_SELECT =
417	 "WG_EXPR_ATTRIB_CHANGED_TO_SELECT";
418  public static final String WG_NO_LOCALE_IN_FORMATNUMBER =
419	 "WG_NO_LOCALE_IN_FORMATNUMBER";
420  public static final String WG_LOCALE_NOT_FOUND = "WG_LOCALE_NOT_FOUND";
421  public static final String WG_CANNOT_MAKE_URL_FROM ="WG_CANNOT_MAKE_URL_FROM";
422  public static final String WG_CANNOT_LOAD_REQUESTED_DOC =
423	 "WG_CANNOT_LOAD_REQUESTED_DOC";
424  public static final String WG_CANNOT_FIND_COLLATOR ="WG_CANNOT_FIND_COLLATOR";
425  public static final String WG_FUNCTIONS_SHOULD_USE_URL =
426	 "WG_FUNCTIONS_SHOULD_USE_URL";
427  public static final String WG_ENCODING_NOT_SUPPORTED_USING_UTF8 =
428	 "WG_ENCODING_NOT_SUPPORTED_USING_UTF8";
429  public static final String WG_ENCODING_NOT_SUPPORTED_USING_JAVA =
430	 "WG_ENCODING_NOT_SUPPORTED_USING_JAVA";
431  public static final String WG_SPECIFICITY_CONFLICTS =
432	 "WG_SPECIFICITY_CONFLICTS";
433  public static final String WG_PARSING_AND_PREPARING =
434	 "WG_PARSING_AND_PREPARING";
435  public static final String WG_ATTR_TEMPLATE = "WG_ATTR_TEMPLATE";
436  public static final String WG_CONFLICT_BETWEEN_XSLSTRIPSPACE_AND_XSLPRESERVESPACE = "WG_CONFLICT_BETWEEN_XSLSTRIPSPACE_AND_XSLPRESERVESP";
437  public static final String WG_ATTRIB_NOT_HANDLED = "WG_ATTRIB_NOT_HANDLED";
438  public static final String WG_NO_DECIMALFORMAT_DECLARATION =
439	 "WG_NO_DECIMALFORMAT_DECLARATION";
440  public static final String WG_OLD_XSLT_NS = "WG_OLD_XSLT_NS";
441  public static final String WG_ONE_DEFAULT_XSLDECIMALFORMAT_ALLOWED =
442	 "WG_ONE_DEFAULT_XSLDECIMALFORMAT_ALLOWED";
443  public static final String WG_XSLDECIMALFORMAT_NAMES_MUST_BE_UNIQUE =
444	 "WG_XSLDECIMALFORMAT_NAMES_MUST_BE_UNIQUE";
445  public static final String WG_ILLEGAL_ATTRIBUTE = "WG_ILLEGAL_ATTRIBUTE";
446  public static final String WG_COULD_NOT_RESOLVE_PREFIX =
447	 "WG_COULD_NOT_RESOLVE_PREFIX";
448  public static final String WG_STYLESHEET_REQUIRES_VERSION_ATTRIB =
449	 "WG_STYLESHEET_REQUIRES_VERSION_ATTRIB";
450  public static final String WG_ILLEGAL_ATTRIBUTE_NAME =
451	 "WG_ILLEGAL_ATTRIBUTE_NAME";
452  public static final String WG_ILLEGAL_ATTRIBUTE_VALUE =
453	 "WG_ILLEGAL_ATTRIBUTE_VALUE";
454  public static final String WG_EMPTY_SECOND_ARG = "WG_EMPTY_SECOND_ARG";
455  public static final String WG_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML =
456	 "WG_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML";
457  public static final String WG_PROCESSINGINSTRUCTION_NOTVALID_NCNAME =
458	 "WG_PROCESSINGINSTRUCTION_NOTVALID_NCNAME";
459  public static final String WG_ILLEGAL_ATTRIBUTE_POSITION =
460	 "WG_ILLEGAL_ATTRIBUTE_POSITION";
461  public static final String NO_MODIFICATION_ALLOWED_ERR =
462         "NO_MODIFICATION_ALLOWED_ERR";
463
464  /*
465   * Now fill in the message text.
466   * Then fill in the message text for that message code in the
467   * array. Use the new error code as the index into the array.
468   */
469
470  // Error messages...
471
472  /** Get the lookup table for error messages.
473   *
474   * @return The int to message lookup table.
475   */
476  public Object[][] getContents()
477  {
478    return new Object[][] {
479
480  /** Error message ID that has a null message, but takes in a single object.    */
481  {"ER0000" , "{0}" },
482
483    { ER_NO_CURLYBRACE,
484      "Error: Can not have '{' within expression"},
485
486    { ER_ILLEGAL_ATTRIBUTE ,
487     "{0} has an illegal attribute: {1}"},
488
489  {ER_NULL_SOURCENODE_APPLYIMPORTS ,
490      "sourceNode is null in xsl:apply-imports!"},
491
492  {ER_CANNOT_ADD,
493      "Can not add {0} to {1}"},
494
495    { ER_NULL_SOURCENODE_HANDLEAPPLYTEMPLATES,
496      "sourceNode is null in handleApplyTemplatesInstruction!"},
497
498    { ER_NO_NAME_ATTRIB,
499     "{0} must have a name attribute."},
500
501    {ER_TEMPLATE_NOT_FOUND,
502     "Could not find template named: {0}"},
503
504    {ER_CANT_RESOLVE_NAME_AVT,
505      "Could not resolve name AVT in xsl:call-template."},
506
507    {ER_REQUIRES_ATTRIB,
508     "{0} requires attribute: {1}"},
509
510    { ER_MUST_HAVE_TEST_ATTRIB,
511      "{0} must have a ''test'' attribute."},
512
513    {ER_BAD_VAL_ON_LEVEL_ATTRIB,
514      "Bad value on level attribute: {0}"},
515
516    {ER_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML,
517      "processing-instruction name can not be 'xml'"},
518
519    { ER_PROCESSINGINSTRUCTION_NOTVALID_NCNAME,
520      "processing-instruction name must be a valid NCName: {0}"},
521
522    { ER_NEED_MATCH_ATTRIB,
523      "{0} must have a match attribute if it has a mode."},
524
525    { ER_NEED_NAME_OR_MATCH_ATTRIB,
526      "{0} requires either a name or a match attribute."},
527
528    {ER_CANT_RESOLVE_NSPREFIX,
529      "Can not resolve namespace prefix: {0}"},
530
531    { ER_ILLEGAL_VALUE,
532     "xml:space has an illegal value: {0}"},
533
534    { ER_NO_OWNERDOC,
535      "Child node does not have an owner document!"},
536
537    { ER_ELEMTEMPLATEELEM_ERR,
538     "ElemTemplateElement error: {0}"},
539
540    { ER_NULL_CHILD,
541     "Trying to add a null child!"},
542
543    { ER_NEED_SELECT_ATTRIB,
544     "{0} requires a select attribute."},
545
546    { ER_NEED_TEST_ATTRIB ,
547      "xsl:when must have a 'test' attribute."},
548
549    { ER_NEED_NAME_ATTRIB,
550      "xsl:with-param must have a 'name' attribute."},
551
552    { ER_NO_CONTEXT_OWNERDOC,
553      "context does not have an owner document!"},
554
555    {ER_COULD_NOT_CREATE_XML_PROC_LIAISON,
556      "Could not create XML TransformerFactory Liaison: {0}"},
557
558    {ER_PROCESS_NOT_SUCCESSFUL,
559      "Xalan: Process was not successful."},
560
561    { ER_NOT_SUCCESSFUL,
562     "Xalan: was not successful."},
563
564    { ER_ENCODING_NOT_SUPPORTED,
565     "Encoding not supported: {0}"},
566
567    {ER_COULD_NOT_CREATE_TRACELISTENER,
568      "Could not create TraceListener: {0}"},
569
570    {ER_KEY_REQUIRES_NAME_ATTRIB,
571      "xsl:key requires a 'name' attribute!"},
572
573    { ER_KEY_REQUIRES_MATCH_ATTRIB,
574      "xsl:key requires a 'match' attribute!"},
575
576    { ER_KEY_REQUIRES_USE_ATTRIB,
577      "xsl:key requires a 'use' attribute!"},
578
579    { ER_REQUIRES_ELEMENTS_ATTRIB,
580      "(StylesheetHandler) {0} requires an ''elements'' attribute!"},
581
582    { ER_MISSING_PREFIX_ATTRIB,
583      "(StylesheetHandler) {0} attribute ''prefix'' is missing"},
584
585    { ER_BAD_STYLESHEET_URL,
586     "Stylesheet URL is bad: {0}"},
587
588    { ER_FILE_NOT_FOUND,
589     "Stylesheet file was not found: {0}"},
590
591    { ER_IOEXCEPTION,
592      "Had IO Exception with stylesheet file: {0}"},
593
594    { ER_NO_HREF_ATTRIB,
595      "(StylesheetHandler) Could not find href attribute for {0}"},
596
597    { ER_STYLESHEET_INCLUDES_ITSELF,
598      "(StylesheetHandler) {0} is directly or indirectly including itself!"},
599
600    { ER_PROCESSINCLUDE_ERROR,
601      "StylesheetHandler.processInclude error, {0}"},
602
603    { ER_MISSING_LANG_ATTRIB,
604      "(StylesheetHandler) {0} attribute ''lang'' is missing"},
605
606    { ER_MISSING_CONTAINER_ELEMENT_COMPONENT,
607      "(StylesheetHandler) misplaced {0} element?? Missing container element ''component''"},
608
609    { ER_CAN_ONLY_OUTPUT_TO_ELEMENT,
610      "Can only output to an Element, DocumentFragment, Document, or PrintWriter."},
611
612    { ER_PROCESS_ERROR,
613     "StylesheetRoot.process error"},
614
615    { ER_UNIMPLNODE_ERROR,
616     "UnImplNode error: {0}"},
617
618    { ER_NO_SELECT_EXPRESSION,
619      "Error! Did not find xpath select expression (-select)."},
620
621    { ER_CANNOT_SERIALIZE_XSLPROCESSOR,
622      "Can not serialize an XSLProcessor!"},
623
624    { ER_NO_INPUT_STYLESHEET,
625      "Stylesheet input was not specified!"},
626
627    { ER_FAILED_PROCESS_STYLESHEET,
628      "Failed to process stylesheet!"},
629
630    { ER_COULDNT_PARSE_DOC,
631     "Could not parse {0} document!"},
632
633    { ER_COULDNT_FIND_FRAGMENT,
634     "Could not find fragment: {0}"},
635
636    { ER_NODE_NOT_ELEMENT,
637      "Node pointed to by fragment identifier was not an element: {0}"},
638
639    { ER_FOREACH_NEED_MATCH_OR_NAME_ATTRIB,
640      "for-each must have either a match or name attribute"},
641
642    { ER_TEMPLATES_NEED_MATCH_OR_NAME_ATTRIB,
643      "templates must have either a match or name attribute"},
644
645    { ER_NO_CLONE_OF_DOCUMENT_FRAG,
646      "No clone of a document fragment!"},
647
648    { ER_CANT_CREATE_ITEM,
649      "Can not create item in result tree: {0}"},
650
651    { ER_XMLSPACE_ILLEGAL_VALUE,
652      "xml:space in the source XML has an illegal value: {0}"},
653
654    { ER_NO_XSLKEY_DECLARATION,
655      "There is no xsl:key declaration for {0}!"},
656
657    { ER_CANT_CREATE_URL,
658     "Error! Cannot create url for: {0}"},
659
660    { ER_XSLFUNCTIONS_UNSUPPORTED,
661     "xsl:functions is unsupported"},
662
663    { ER_PROCESSOR_ERROR,
664     "XSLT TransformerFactory Error"},
665
666    { ER_NOT_ALLOWED_INSIDE_STYLESHEET,
667      "(StylesheetHandler) {0} not allowed inside a stylesheet!"},
668
669    { ER_RESULTNS_NOT_SUPPORTED,
670      "result-ns no longer supported!  Use xsl:output instead."},
671
672    { ER_DEFAULTSPACE_NOT_SUPPORTED,
673      "default-space no longer supported!  Use xsl:strip-space or xsl:preserve-space instead."},
674
675    { ER_INDENTRESULT_NOT_SUPPORTED,
676      "indent-result no longer supported!  Use xsl:output instead."},
677
678    { ER_ILLEGAL_ATTRIB,
679      "(StylesheetHandler) {0} has an illegal attribute: {1}"},
680
681    { ER_UNKNOWN_XSL_ELEM,
682     "Unknown XSL element: {0}"},
683
684    { ER_BAD_XSLSORT_USE,
685      "(StylesheetHandler) xsl:sort can only be used with xsl:apply-templates or xsl:for-each."},
686
687    { ER_MISPLACED_XSLWHEN,
688      "(StylesheetHandler) misplaced xsl:when!"},
689
690    { ER_XSLWHEN_NOT_PARENTED_BY_XSLCHOOSE,
691      "(StylesheetHandler) xsl:when not parented by xsl:choose!"},
692
693    { ER_MISPLACED_XSLOTHERWISE,
694      "(StylesheetHandler) misplaced xsl:otherwise!"},
695
696    { ER_XSLOTHERWISE_NOT_PARENTED_BY_XSLCHOOSE,
697      "(StylesheetHandler) xsl:otherwise not parented by xsl:choose!"},
698
699    { ER_NOT_ALLOWED_INSIDE_TEMPLATE,
700      "(StylesheetHandler) {0} is not allowed inside a template!"},
701
702    { ER_UNKNOWN_EXT_NS_PREFIX,
703      "(StylesheetHandler) {0} extension namespace prefix {1} unknown"},
704
705    { ER_IMPORTS_AS_FIRST_ELEM,
706      "(StylesheetHandler) Imports can only occur as the first elements in the stylesheet!"},
707
708    { ER_IMPORTING_ITSELF,
709      "(StylesheetHandler) {0} is directly or indirectly importing itself!"},
710
711    { ER_XMLSPACE_ILLEGAL_VAL,
712      "(StylesheetHandler) " + "xml:space has an illegal value: {0}"},
713
714    { ER_PROCESSSTYLESHEET_NOT_SUCCESSFUL,
715      "processStylesheet not succesfull!"},
716
717    { ER_SAX_EXCEPTION,
718     "SAX Exception"},
719
720//  add this message to fix bug 21478
721    { ER_FUNCTION_NOT_SUPPORTED,
722     "Function not supported!"},
723
724    { ER_XSLT_ERROR,
725     "XSLT Error"},
726
727    { ER_CURRENCY_SIGN_ILLEGAL,
728      "currency sign is not allowed in format pattern string"},
729
730    { ER_DOCUMENT_FUNCTION_INVALID_IN_STYLESHEET_DOM,
731      "Document function not supported in Stylesheet DOM!"},
732
733    { ER_CANT_RESOLVE_PREFIX_OF_NON_PREFIX_RESOLVER,
734      "Can't resolve prefix of non-Prefix resolver!"},
735
736    { ER_REDIRECT_COULDNT_GET_FILENAME,
737      "Redirect extension: Could not get filename - file or select attribute must return vald string."},
738
739    { ER_CANNOT_BUILD_FORMATTERLISTENER_IN_REDIRECT,
740      "Can not build FormatterListener in Redirect extension!"},
741
742    { ER_INVALID_PREFIX_IN_EXCLUDERESULTPREFIX,
743      "Prefix in exclude-result-prefixes is not valid: {0}"},
744
745    { ER_MISSING_NS_URI,
746      "Missing namespace URI for specified prefix"},
747
748    { ER_MISSING_ARG_FOR_OPTION,
749      "Missing argument for option: {0}"},
750
751    { ER_INVALID_OPTION,
752     "Invalid option: {0}"},
753
754    { ER_MALFORMED_FORMAT_STRING,
755     "Malformed format string: {0}"},
756
757    { ER_STYLESHEET_REQUIRES_VERSION_ATTRIB,
758      "xsl:stylesheet requires a 'version' attribute!"},
759
760    { ER_ILLEGAL_ATTRIBUTE_VALUE,
761      "Attribute: {0} has an illegal value: {1}"},
762
763    { ER_CHOOSE_REQUIRES_WHEN,
764     "xsl:choose requires an xsl:when"},
765
766    { ER_NO_APPLY_IMPORT_IN_FOR_EACH,
767      "xsl:apply-imports not allowed in a xsl:for-each"},
768
769    { ER_CANT_USE_DTM_FOR_OUTPUT,
770      "Cannot use a DTMLiaison for an output DOM node... pass a org.apache.xpath.DOM2Helper instead!"},
771
772    { ER_CANT_USE_DTM_FOR_INPUT,
773      "Cannot use a DTMLiaison for a input DOM node... pass a org.apache.xpath.DOM2Helper instead!"},
774
775    { ER_CALL_TO_EXT_FAILED,
776      "Call to extension element failed: {0}"},
777
778    { ER_PREFIX_MUST_RESOLVE,
779      "Prefix must resolve to a namespace: {0}"},
780
781    { ER_INVALID_UTF16_SURROGATE,
782      "Invalid UTF-16 surrogate detected: {0} ?"},
783
784    { ER_XSLATTRSET_USED_ITSELF,
785      "xsl:attribute-set {0} used itself, which will cause an infinite loop."},
786
787    { ER_CANNOT_MIX_XERCESDOM,
788      "Can not mix non Xerces-DOM input with Xerces-DOM output!"},
789
790    { ER_TOO_MANY_LISTENERS,
791      "addTraceListenersToStylesheet - TooManyListenersException"},
792
793    { ER_IN_ELEMTEMPLATEELEM_READOBJECT,
794      "In ElemTemplateElement.readObject: {0}"},
795
796    { ER_DUPLICATE_NAMED_TEMPLATE,
797      "Found more than one template named: {0}"},
798
799    { ER_INVALID_KEY_CALL,
800      "Invalid function call: recursive key() calls are not allowed"},
801
802    { ER_REFERENCING_ITSELF,
803      "Variable {0} is directly or indirectly referencing itself!"},
804
805    { ER_ILLEGAL_DOMSOURCE_INPUT,
806      "The input node can not be null for a DOMSource for newTemplates!"},
807
808    { ER_CLASS_NOT_FOUND_FOR_OPTION,
809	"Class file not found for option {0}"},
810
811    { ER_REQUIRED_ELEM_NOT_FOUND,
812	"Required Element not found: {0}"},
813
814    { ER_INPUT_CANNOT_BE_NULL,
815	"InputStream cannot be null"},
816
817    { ER_URI_CANNOT_BE_NULL,
818	"URI cannot be null"},
819
820    { ER_FILE_CANNOT_BE_NULL,
821	"File cannot be null"},
822
823    { ER_SOURCE_CANNOT_BE_NULL,
824		"InputSource cannot be null"},
825
826    { ER_CANNOT_INIT_BSFMGR,
827		"Could not initialize BSF Manager"},
828
829    { ER_CANNOT_CMPL_EXTENSN,
830		"Could not compile extension"},
831
832    { ER_CANNOT_CREATE_EXTENSN,
833      "Could not create extension: {0} because of: {1}"},
834
835    { ER_INSTANCE_MTHD_CALL_REQUIRES,
836      "Instance method call to method {0} requires an Object instance as first argument"},
837
838    { ER_INVALID_ELEMENT_NAME,
839      "Invalid element name specified {0}"},
840
841    { ER_ELEMENT_NAME_METHOD_STATIC,
842      "Element name method must be static {0}"},
843
844    { ER_EXTENSION_FUNC_UNKNOWN,
845             "Extension function {0} : {1} is unknown"},
846
847    { ER_MORE_MATCH_CONSTRUCTOR,
848             "More than one best match for constructor for {0}"},
849
850    { ER_MORE_MATCH_METHOD,
851             "More than one best match for method {0}"},
852
853    { ER_MORE_MATCH_ELEMENT,
854             "More than one best match for element method {0}"},
855
856    { ER_INVALID_CONTEXT_PASSED,
857             "Invalid context passed to evaluate {0}"},
858
859    { ER_POOL_EXISTS,
860             "Pool already exists"},
861
862    { ER_NO_DRIVER_NAME,
863             "No driver Name specified"},
864
865    { ER_NO_URL,
866             "No URL specified"},
867
868    { ER_POOL_SIZE_LESSTHAN_ONE,
869             "Pool size is less than one!"},
870
871    { ER_INVALID_DRIVER,
872             "Invalid driver name specified!"},
873
874    { ER_NO_STYLESHEETROOT,
875             "Did not find the stylesheet root!"},
876
877    { ER_ILLEGAL_XMLSPACE_VALUE,
878         "Illegal value for xml:space"},
879
880    { ER_PROCESSFROMNODE_FAILED,
881         "processFromNode failed"},
882
883    { ER_RESOURCE_COULD_NOT_LOAD,
884        "The resource [ {0} ] could not load: {1} \n {2} \t {3}"},
885
886    { ER_BUFFER_SIZE_LESSTHAN_ZERO,
887        "Buffer size <=0"},
888
889    { ER_UNKNOWN_ERROR_CALLING_EXTENSION,
890        "Unknown error when calling extension"},
891
892    { ER_NO_NAMESPACE_DECL,
893        "Prefix {0} does not have a corresponding namespace declaration"},
894
895    { ER_ELEM_CONTENT_NOT_ALLOWED,
896        "Element content not allowed for lang=javaclass {0}"},
897
898    { ER_STYLESHEET_DIRECTED_TERMINATION,
899        "Stylesheet directed termination"},
900
901    { ER_ONE_OR_TWO,
902        "1 or 2"},
903
904    { ER_TWO_OR_THREE,
905        "2 or 3"},
906
907    { ER_COULD_NOT_LOAD_RESOURCE,
908        "Could not load {0} (check CLASSPATH), now using just the defaults"},
909
910    { ER_CANNOT_INIT_DEFAULT_TEMPLATES,
911        "Cannot initialize default templates"},
912
913    { ER_RESULT_NULL,
914        "Result should not be null"},
915
916    { ER_RESULT_COULD_NOT_BE_SET,
917        "Result could not be set"},
918
919    { ER_NO_OUTPUT_SPECIFIED,
920        "No output specified"},
921
922    { ER_CANNOT_TRANSFORM_TO_RESULT_TYPE,
923        "Can''t transform to a Result of type {0}"},
924
925    { ER_CANNOT_TRANSFORM_SOURCE_TYPE,
926        "Can''t transform a Source of type {0}"},
927
928    { ER_NULL_CONTENT_HANDLER,
929        "Null content handler"},
930
931    { ER_NULL_ERROR_HANDLER,
932        "Null error handler"},
933
934    { ER_CANNOT_CALL_PARSE,
935        "parse can not be called if the ContentHandler has not been set"},
936
937    { ER_NO_PARENT_FOR_FILTER,
938        "No parent for filter"},
939
940    { ER_NO_STYLESHEET_IN_MEDIA,
941         "No stylesheet found in: {0}, media= {1}"},
942
943    { ER_NO_STYLESHEET_PI,
944         "No xml-stylesheet PI found in: {0}"},
945
946    { ER_NOT_SUPPORTED,
947       "Not supported: {0}"},
948
949    { ER_PROPERTY_VALUE_BOOLEAN,
950       "Value for property {0} should be a Boolean instance"},
951
952    { ER_COULD_NOT_FIND_EXTERN_SCRIPT,
953         "Could not get to external script at {0}"},
954
955    { ER_RESOURCE_COULD_NOT_FIND,
956        "The resource [ {0} ] could not be found.\n {1}"},
957
958    { ER_OUTPUT_PROPERTY_NOT_RECOGNIZED,
959        "Output property not recognized: {0}"},
960
961    { ER_FAILED_CREATING_ELEMLITRSLT,
962        "Failed creating ElemLiteralResult instance"},
963
964  //Earlier (JDK 1.4 XALAN 2.2-D11) at key code '204' the key name was ER_PRIORITY_NOT_PARSABLE
965  // In latest Xalan code base key name is  ER_VALUE_SHOULD_BE_NUMBER. This should also be taken care
966  //in locale specific files like XSLTErrorResources_de.java, XSLTErrorResources_fr.java etc.
967  //NOTE: Not only the key name but message has also been changed.
968    { ER_VALUE_SHOULD_BE_NUMBER,
969        "Value for {0} should contain a parsable number"},
970
971    { ER_VALUE_SHOULD_EQUAL,
972        "Value for {0} should equal yes or no"},
973
974    { ER_FAILED_CALLING_METHOD,
975        "Failed calling {0} method"},
976
977    { ER_FAILED_CREATING_ELEMTMPL,
978        "Failed creating ElemTemplateElement instance"},
979
980    { ER_CHARS_NOT_ALLOWED,
981        "Characters are not allowed at this point in the document"},
982
983    { ER_ATTR_NOT_ALLOWED,
984        "\"{0}\" attribute is not allowed on the {1} element!"},
985
986    { ER_BAD_VALUE,
987     "{0} bad value {1} "},
988
989    { ER_ATTRIB_VALUE_NOT_FOUND,
990     "{0} attribute value not found "},
991
992    { ER_ATTRIB_VALUE_NOT_RECOGNIZED,
993     "{0} attribute value not recognized "},
994
995    { ER_NULL_URI_NAMESPACE,
996     "Attempting to generate a namespace prefix with a null URI"},
997
998    { ER_NUMBER_TOO_BIG,
999     "Attempting to format a number bigger than the largest Long integer"},
1000
1001    { ER_CANNOT_FIND_SAX1_DRIVER,
1002     "Cannot find SAX1 driver class {0}"},
1003
1004    { ER_SAX1_DRIVER_NOT_LOADED,
1005     "SAX1 driver class {0} found but cannot be loaded"},
1006
1007    { ER_SAX1_DRIVER_NOT_INSTANTIATED,
1008     "SAX1 driver class {0} loaded but cannot be instantiated"},
1009
1010    { ER_SAX1_DRIVER_NOT_IMPLEMENT_PARSER,
1011     "SAX1 driver class {0} does not implement org.xml.sax.Parser"},
1012
1013    { ER_PARSER_PROPERTY_NOT_SPECIFIED,
1014     "System property org.xml.sax.parser not specified"},
1015
1016    { ER_PARSER_ARG_CANNOT_BE_NULL,
1017     "Parser argument must not be null"},
1018
1019    { ER_FEATURE,
1020     "Feature: {0}"},
1021
1022    { ER_PROPERTY,
1023     "Property: {0}"},
1024
1025    { ER_NULL_ENTITY_RESOLVER,
1026     "Null entity resolver"},
1027
1028    { ER_NULL_DTD_HANDLER,
1029     "Null DTD handler"},
1030
1031    { ER_NO_DRIVER_NAME_SPECIFIED,
1032     "No Driver Name Specified!"},
1033
1034    { ER_NO_URL_SPECIFIED,
1035     "No URL Specified!"},
1036
1037    { ER_POOLSIZE_LESS_THAN_ONE,
1038     "Pool size is less than 1!"},
1039
1040    { ER_INVALID_DRIVER_NAME,
1041     "Invalid Driver Name Specified!"},
1042
1043    { ER_ERRORLISTENER,
1044     "ErrorListener"},
1045
1046
1047// Note to translators:  The following message should not normally be displayed
1048//   to users.  It describes a situation in which the processor has detected
1049//   an internal consistency problem in itself, and it provides this message
1050//   for the developer to help diagnose the problem.  The name
1051//   'ElemTemplateElement' is the name of a class, and should not be
1052//   translated.
1053    { ER_ASSERT_NO_TEMPLATE_PARENT,
1054     "Programmer's error! The expression has no ElemTemplateElement parent!"},
1055
1056
1057// Note to translators:  The following message should not normally be displayed
1058//   to users.  It describes a situation in which the processor has detected
1059//   an internal consistency problem in itself, and it provides this message
1060//   for the developer to help diagnose the problem.  The substitution text
1061//   provides further information in order to diagnose the problem.  The name
1062//   'RedundentExprEliminator' is the name of a class, and should not be
1063//   translated.
1064    { ER_ASSERT_REDUNDENT_EXPR_ELIMINATOR,
1065     "Programmer''s assertion in RedundentExprEliminator: {0}"},
1066
1067    { ER_NOT_ALLOWED_IN_POSITION,
1068     "{0} is not allowed in this position in the stylesheet!"},
1069
1070    { ER_NONWHITESPACE_NOT_ALLOWED_IN_POSITION,
1071     "Non-whitespace text is not allowed in this position in the stylesheet!"},
1072
1073  // This code is shared with warning codes.
1074  // SystemId Unknown
1075    { INVALID_TCHAR,
1076     "Illegal value: {1} used for CHAR attribute: {0}.  An attribute of type CHAR must be only 1 character!"},
1077
1078    // Note to translators:  The following message is used if the value of
1079    // an attribute in a stylesheet is invalid.  "QNAME" is the XML data-type of
1080    // the attribute, and should not be translated.  The substitution text {1} is
1081    // the attribute value and {0} is the attribute name.
1082  //The following codes are shared with the warning codes...
1083    { INVALID_QNAME,
1084     "Illegal value: {1} used for QNAME attribute: {0}"},
1085
1086    // Note to translators:  The following message is used if the value of
1087    // an attribute in a stylesheet is invalid.  "ENUM" is the XML data-type of
1088    // the attribute, and should not be translated.  The substitution text {1} is
1089    // the attribute value, {0} is the attribute name, and {2} is a list of valid
1090    // values.
1091    { INVALID_ENUM,
1092     "Illegal value: {1} used for ENUM attribute: {0}.  Valid values are: {2}."},
1093
1094// Note to translators:  The following message is used if the value of
1095// an attribute in a stylesheet is invalid.  "NMTOKEN" is the XML data-type
1096// of the attribute, and should not be translated.  The substitution text {1} is
1097// the attribute value and {0} is the attribute name.
1098    { INVALID_NMTOKEN,
1099     "Illegal value: {1} used for NMTOKEN attribute: {0} "},
1100
1101// Note to translators:  The following message is used if the value of
1102// an attribute in a stylesheet is invalid.  "NCNAME" is the XML data-type
1103// of the attribute, and should not be translated.  The substitution text {1} is
1104// the attribute value and {0} is the attribute name.
1105    { INVALID_NCNAME,
1106     "Illegal value: {1} used for NCNAME attribute: {0} "},
1107
1108// Note to translators:  The following message is used if the value of
1109// an attribute in a stylesheet is invalid.  "boolean" is the XSLT data-type
1110// of the attribute, and should not be translated.  The substitution text {1} is
1111// the attribute value and {0} is the attribute name.
1112    { INVALID_BOOLEAN,
1113     "Illegal value: {1} used for boolean attribute: {0} "},
1114
1115// Note to translators:  The following message is used if the value of
1116// an attribute in a stylesheet is invalid.  "number" is the XSLT data-type
1117// of the attribute, and should not be translated.  The substitution text {1} is
1118// the attribute value and {0} is the attribute name.
1119     { INVALID_NUMBER,
1120     "Illegal value: {1} used for number attribute: {0} "},
1121
1122
1123  // End of shared codes...
1124
1125// Note to translators:  A "match pattern" is a special form of XPath expression
1126// that is used for matching patterns.  The substitution text is the name of
1127// a function.  The message indicates that when this function is referenced in
1128// a match pattern, its argument must be a string literal (or constant.)
1129// ER_ARG_LITERAL - new error message for bugzilla //5202
1130    { ER_ARG_LITERAL,
1131     "Argument to {0} in match pattern must be a literal."},
1132
1133// Note to translators:  The following message indicates that two definitions of
1134// a variable.  A "global variable" is a variable that is accessible everywher
1135// in the stylesheet.
1136// ER_DUPLICATE_GLOBAL_VAR - new error message for bugzilla #790
1137    { ER_DUPLICATE_GLOBAL_VAR,
1138     "Duplicate global variable declaration."},
1139
1140
1141// Note to translators:  The following message indicates that two definitions of
1142// a variable were encountered.
1143// ER_DUPLICATE_VAR - new error message for bugzilla #790
1144    { ER_DUPLICATE_VAR,
1145     "Duplicate variable declaration."},
1146
1147    // Note to translators:  "xsl:template, "name" and "match" are XSLT keywords
1148    // which must not be translated.
1149    // ER_TEMPLATE_NAME_MATCH - new error message for bugzilla #789
1150    { ER_TEMPLATE_NAME_MATCH,
1151     "xsl:template must have a name or match attribute (or both)"},
1152
1153    // Note to translators:  "exclude-result-prefixes" is an XSLT keyword which
1154    // should not be translated.  The message indicates that a namespace prefix
1155    // encountered as part of the value of the exclude-result-prefixes attribute
1156    // was in error.
1157    // ER_INVALID_PREFIX - new error message for bugzilla #788
1158    { ER_INVALID_PREFIX,
1159     "Prefix in exclude-result-prefixes is not valid: {0}"},
1160
1161    // Note to translators:  An "attribute set" is a set of attributes that can
1162    // be added to an element in the output document as a group.  The message
1163    // indicates that there was a reference to an attribute set named {0} that
1164    // was never defined.
1165    // ER_NO_ATTRIB_SET - new error message for bugzilla #782
1166    { ER_NO_ATTRIB_SET,
1167     "attribute-set named {0} does not exist"},
1168
1169    // Note to translators:  This message indicates that there was a reference
1170    // to a function named {0} for which no function definition could be found.
1171    { ER_FUNCTION_NOT_FOUND,
1172     "The function named {0} does not exist"},
1173
1174    // Note to translators:  This message indicates that the XSLT instruction
1175    // that is named by the substitution text {0} must not contain other XSLT
1176    // instructions (content) or a "select" attribute.  The word "select" is
1177    // an XSLT keyword in this case and must not be translated.
1178    { ER_CANT_HAVE_CONTENT_AND_SELECT,
1179     "The {0} element must not have both content and a select attribute."},
1180
1181    // Note to translators:  This message indicates that the value argument
1182    // of setParameter must be a valid Java Object.
1183    { ER_INVALID_SET_PARAM_VALUE,
1184     "The value of param {0} must be a valid Java Object"},
1185
1186    { ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX_FOR_DEFAULT,
1187      "The result-prefix attribute of an xsl:namespace-alias element has the value '#default', but there is no declaration of the default namespace in scope for the element"},
1188
1189    { ER_INVALID_NAMESPACE_URI_VALUE_FOR_RESULT_PREFIX,
1190      "The result-prefix attribute of an xsl:namespace-alias element has the value ''{0}'', but there is no namespace declaration for the prefix ''{0}'' in scope for the element."},
1191
1192    { ER_SET_FEATURE_NULL_NAME,
1193      "The feature name cannot be null in TransformerFactory.setFeature(String name, boolean value)."},
1194
1195    { ER_GET_FEATURE_NULL_NAME,
1196      "The feature name cannot be null in TransformerFactory.getFeature(String name)."},
1197
1198    { ER_UNSUPPORTED_FEATURE,
1199      "Cannot set the feature ''{0}'' on this TransformerFactory."},
1200
1201    { ER_EXTENSION_ELEMENT_NOT_ALLOWED_IN_SECURE_PROCESSING,
1202  	  "Use of the extension element ''{0}'' is not allowed when the secure processing feature is set to true."},
1203
1204    { ER_NAMESPACE_CONTEXT_NULL_NAMESPACE,
1205      "Cannot get the prefix for a null namespace uri."},
1206
1207    { ER_NAMESPACE_CONTEXT_NULL_PREFIX,
1208      "Cannot get the namespace uri for null prefix."},
1209
1210    { ER_XPATH_RESOLVER_NULL_QNAME,
1211      "The function name cannot be null."},
1212
1213    { ER_XPATH_RESOLVER_NEGATIVE_ARITY,
1214      "The arity cannot be negative."},
1215  // Warnings...
1216
1217    { WG_FOUND_CURLYBRACE,
1218      "Found '}' but no attribute template open!"},
1219
1220    { WG_COUNT_ATTRIB_MATCHES_NO_ANCESTOR,
1221      "Warning: count attribute does not match an ancestor in xsl:number! Target = {0}"},
1222
1223    { WG_EXPR_ATTRIB_CHANGED_TO_SELECT,
1224      "Old syntax: The name of the 'expr' attribute has been changed to 'select'."},
1225
1226    { WG_NO_LOCALE_IN_FORMATNUMBER,
1227      "Xalan doesn't yet handle the locale name in the format-number function."},
1228
1229    { WG_LOCALE_NOT_FOUND,
1230      "Warning: Could not find locale for xml:lang={0}"},
1231
1232    { WG_CANNOT_MAKE_URL_FROM,
1233      "Can not make URL from: {0}"},
1234
1235    { WG_CANNOT_LOAD_REQUESTED_DOC,
1236      "Can not load requested doc: {0}"},
1237
1238    { WG_CANNOT_FIND_COLLATOR,
1239      "Could not find Collator for <sort xml:lang={0}"},
1240
1241    { WG_FUNCTIONS_SHOULD_USE_URL,
1242      "Old syntax: the functions instruction should use a url of {0}"},
1243
1244    { WG_ENCODING_NOT_SUPPORTED_USING_UTF8,
1245      "encoding not supported: {0}, using UTF-8"},
1246
1247    { WG_ENCODING_NOT_SUPPORTED_USING_JAVA,
1248      "encoding not supported: {0}, using Java {1}"},
1249
1250    { WG_SPECIFICITY_CONFLICTS,
1251      "Specificity conflicts found: {0} Last found in stylesheet will be used."},
1252
1253    { WG_PARSING_AND_PREPARING,
1254      "========= Parsing and preparing {0} =========="},
1255
1256    { WG_ATTR_TEMPLATE,
1257     "Attr Template, {0}"},
1258
1259    { WG_CONFLICT_BETWEEN_XSLSTRIPSPACE_AND_XSLPRESERVESPACE,
1260      "Match conflict between xsl:strip-space and xsl:preserve-space"},
1261
1262    { WG_ATTRIB_NOT_HANDLED,
1263      "Xalan does not yet handle the {0} attribute!"},
1264
1265    { WG_NO_DECIMALFORMAT_DECLARATION,
1266      "No declaration found for decimal format: {0}"},
1267
1268    { WG_OLD_XSLT_NS,
1269     "Missing or incorrect XSLT Namespace. "},
1270
1271    { WG_ONE_DEFAULT_XSLDECIMALFORMAT_ALLOWED,
1272      "Only one default xsl:decimal-format declaration is allowed."},
1273
1274    { WG_XSLDECIMALFORMAT_NAMES_MUST_BE_UNIQUE,
1275      "xsl:decimal-format names must be unique. Name \"{0}\" has been duplicated."},
1276
1277    { WG_ILLEGAL_ATTRIBUTE,
1278      "{0} has an illegal attribute: {1}"},
1279
1280    { WG_COULD_NOT_RESOLVE_PREFIX,
1281      "Could not resolve namespace prefix: {0}. The node will be ignored."},
1282
1283    { WG_STYLESHEET_REQUIRES_VERSION_ATTRIB,
1284      "xsl:stylesheet requires a 'version' attribute!"},
1285
1286    { WG_ILLEGAL_ATTRIBUTE_NAME,
1287      "Illegal attribute name: {0}"},
1288
1289    { WG_ILLEGAL_ATTRIBUTE_VALUE,
1290      "Illegal value used for attribute {0}: {1}"},
1291
1292    { WG_EMPTY_SECOND_ARG,
1293      "Resulting nodeset from second argument of document function is empty. Return an empty node-set."},
1294
1295  //Following are the new WARNING keys added in XALAN code base after Jdk 1.4 (Xalan 2.2-D11)
1296
1297    // Note to translators:  "name" and "xsl:processing-instruction" are keywords
1298    // and must not be translated.
1299    { WG_PROCESSINGINSTRUCTION_NAME_CANT_BE_XML,
1300      "The value of the 'name' attribute of xsl:processing-instruction name must not be 'xml'"},
1301
1302    // Note to translators:  "name" and "xsl:processing-instruction" are keywords
1303    // and must not be translated.  "NCName" is an XML data-type and must not be
1304    // translated.
1305    { WG_PROCESSINGINSTRUCTION_NOTVALID_NCNAME,
1306      "The value of the ''name'' attribute of xsl:processing-instruction must be a valid NCName: {0}"},
1307
1308    // Note to translators:  This message is reported if the stylesheet that is
1309    // being processed attempted to construct an XML document with an attribute in a
1310    // place other than on an element.  The substitution text specifies the name of
1311    // the attribute.
1312    { WG_ILLEGAL_ATTRIBUTE_POSITION,
1313      "Cannot add attribute {0} after child nodes or before an element is produced.  Attribute will be ignored."},
1314
1315    { NO_MODIFICATION_ALLOWED_ERR,
1316      "An attempt is made to modify an object where modifications are not allowed."
1317    },
1318
1319    //Check: WHY THERE IS A GAP B/W NUMBERS in the XSLTErrorResources properties file?
1320
1321  // Other miscellaneous text used inside the code...
1322  { "ui_language", "en"},
1323  {  "help_language",  "en" },
1324  {  "language",  "en" },
1325  { "BAD_CODE", "Parameter to createMessage was out of bounds"},
1326  {  "FORMAT_FAILED", "Exception thrown during messageFormat call"},
1327  {  "version", ">>>>>>> Xalan Version "},
1328  {  "version2",  "<<<<<<<"},
1329  {  "yes", "yes"},
1330  { "line", "Line #"},
1331  { "column","Column #"},
1332  { "xsldone", "XSLProcessor: done"},
1333
1334
1335  // Note to translators:  The following messages provide usage information
1336  // for the Xalan Process command line.  "Process" is the name of a Java class,
1337  // and should not be translated.
1338  { "xslProc_option", "Xalan-J command line Process class options:"},
1339  { "xslProc_option", "Xalan-J command line Process class options\u003a"},
1340  { "xslProc_invalid_xsltc_option", "The option {0} is not supported in XSLTC mode."},
1341  { "xslProc_invalid_xalan_option", "The option {0} can only be used with -XSLTC."},
1342  { "xslProc_no_input", "Error: No stylesheet or input xml is specified. Run this command without any option for usage instructions."},
1343  { "xslProc_common_options", "-Common Options-"},
1344  { "xslProc_xalan_options", "-Options for Xalan-"},
1345  { "xslProc_xsltc_options", "-Options for XSLTC-"},
1346  { "xslProc_return_to_continue", "(press <return> to continue)"},
1347
1348   // Note to translators: The option name and the parameter name do not need to
1349   // be translated. Only translate the messages in parentheses.  Note also that
1350   // leading whitespace in the messages is used to indent the usage information
1351   // for each option in the English messages.
1352   // Do not translate the keywords: XSLTC, SAX, DOM and DTM.
1353  { "optionXSLTC", "   [-XSLTC (use XSLTC for transformation)]"},
1354  { "optionIN", "   [-IN inputXMLURL]"},
1355  { "optionXSL", "   [-XSL XSLTransformationURL]"},
1356  { "optionOUT",  "   [-OUT outputFileName]"},
1357  { "optionLXCIN", "   [-LXCIN compiledStylesheetFileNameIn]"},
1358  { "optionLXCOUT", "   [-LXCOUT compiledStylesheetFileNameOutOut]"},
1359  { "optionPARSER", "   [-PARSER fully qualified class name of parser liaison]"},
1360  {  "optionE", "   [-E (Do not expand entity refs)]"},
1361  {  "optionV",  "   [-E (Do not expand entity refs)]"},
1362  {  "optionQC", "   [-QC (Quiet Pattern Conflicts Warnings)]"},
1363  {  "optionQ", "   [-Q  (Quiet Mode)]"},
1364  {  "optionLF", "   [-LF (Use linefeeds only on output {default is CR/LF})]"},
1365  {  "optionCR", "   [-CR (Use carriage returns only on output {default is CR/LF})]"},
1366  { "optionESCAPE", "   [-ESCAPE (Which characters to escape {default is <>&\"\'\\r\\n}]"},
1367  { "optionINDENT", "   [-INDENT (Control how many spaces to indent {default is 0})]"},
1368  { "optionTT", "   [-TT (Trace the templates as they are being called.)]"},
1369  { "optionTG", "   [-TG (Trace each generation event.)]"},
1370  { "optionTS", "   [-TS (Trace each selection event.)]"},
1371  {  "optionTTC", "   [-TTC (Trace the template children as they are being processed.)]"},
1372  { "optionTCLASS", "   [-TCLASS (TraceListener class for trace extensions.)]"},
1373  { "optionVALIDATE", "   [-VALIDATE (Set whether validation occurs.  Validation is off by default.)]"},
1374  { "optionEDUMP", "   [-EDUMP {optional filename} (Do stackdump on error.)]"},
1375  {  "optionXML", "   [-XML (Use XML formatter and add XML header.)]"},
1376  {  "optionTEXT", "   [-TEXT (Use simple Text formatter.)]"},
1377  {  "optionHTML", "   [-HTML (Use HTML formatter.)]"},
1378  {  "optionPARAM", "   [-PARAM name expression (Set a stylesheet parameter)]"},
1379  {  "noParsermsg1", "XSL Process was not successful."},
1380  {  "noParsermsg2", "** Could not find parser **"},
1381  { "noParsermsg3",  "Please check your classpath."},
1382  { "noParsermsg4", "If you don't have IBM's XML Parser for Java, you can download it from"},
1383  { "noParsermsg5", "IBM's AlphaWorks: http://www.alphaworks.ibm.com/formula/xml"},
1384  { "optionURIRESOLVER", "   [-URIRESOLVER full class name (URIResolver to be used to resolve URIs)]"},
1385  { "optionENTITYRESOLVER",  "   [-ENTITYRESOLVER full class name (EntityResolver to be used to resolve entities)]"},
1386  { "optionCONTENTHANDLER",  "   [-CONTENTHANDLER full class name (ContentHandler to be used to serialize output)]"},
1387  {  "optionLINENUMBERS",  "   [-L use line numbers for source document]"},
1388  { "optionSECUREPROCESSING", "   [-SECURE (set the secure processing feature to true.)]"},
1389
1390    // Following are the new options added in XSLTErrorResources.properties files after Jdk 1.4 (Xalan 2.2-D11)
1391
1392
1393  {  "optionMEDIA",  "   [-MEDIA mediaType (use media attribute to find stylesheet associated with a document.)]"},
1394  {  "optionFLAVOR",  "   [-FLAVOR flavorName (Explicitly use s2s=SAX or d2d=DOM to do transform.)] "}, // Added by sboag/scurcuru; experimental
1395  { "optionDIAG", "   [-DIAG (Print overall milliseconds transform took.)]"},
1396  { "optionINCREMENTAL",  "   [-INCREMENTAL (request incremental DTM construction by setting http://xml.apache.org/xalan/features/incremental true.)]"},
1397  {  "optionNOOPTIMIMIZE",  "   [-NOOPTIMIMIZE (request no stylesheet optimization processing by setting http://xml.apache.org/xalan/features/optimize false.)]"},
1398  { "optionRL",  "   [-RL recursionlimit (assert numeric limit on stylesheet recursion depth.)]"},
1399  {   "optionXO",  "   [-XO [transletName] (assign the name to the generated translet)]"},
1400  {  "optionXD", "   [-XD destinationDirectory (specify a destination directory for translet)]"},
1401  {  "optionXJ",  "   [-XJ jarfile (packages translet classes into a jar file of name <jarfile>)]"},
1402  {   "optionXP",  "   [-XP package (specifies a package name prefix for all generated translet classes)]"},
1403
1404  //AddITIONAL  STRINGS that need L10n
1405  // Note to translators:  The following message describes usage of a particular
1406  // command-line option that is used to enable the "template inlining"
1407  // optimization.  The optimization involves making a copy of the code
1408  // generated for a template in another template that refers to it.
1409  { "optionXN",  "   [-XN (enables template inlining)]" },
1410  { "optionXX",  "   [-XX (turns on additional debugging message output)]"},
1411  { "optionXT" , "   [-XT (use translet to transform if possible)]"},
1412  { "diagTiming"," --------- Transform of {0} via {1} took {2} ms" },
1413  { "recursionTooDeep","Template nesting too deep. nesting = {0}, template {1} {2}" },
1414  { "nameIs", "name is" },
1415  { "matchPatternIs", "match pattern is" }
1416
1417  };
1418  }
1419  // ================= INFRASTRUCTURE ======================
1420
1421  /** String for use when a bad error code was encountered.    */
1422  public static final String BAD_CODE = "BAD_CODE";
1423
1424  /** String for use when formatting of the error string failed.   */
1425  public static final String FORMAT_FAILED = "FORMAT_FAILED";
1426
1427  /** General error string.   */
1428  public static final String ERROR_STRING = "#error";
1429
1430  /** String to prepend to error messages.  */
1431  public static final String ERROR_HEADER = "Error: ";
1432
1433  /** String to prepend to warning messages.    */
1434  public static final String WARNING_HEADER = "Warning: ";
1435
1436  /** String to specify the XSLT module.  */
1437  public static final String XSL_HEADER = "XSLT ";
1438
1439  /** String to specify the XML parser module.  */
1440  public static final String XML_HEADER = "XML ";
1441
1442  /** I don't think this is used any more.
1443   * @deprecated  */
1444  public static final String QUERY_HEADER = "PATTERN ";
1445
1446
1447  /**
1448   *   Return a named ResourceBundle for a particular locale.  This method mimics the behavior
1449   *   of ResourceBundle.getBundle().
1450   *
1451   *   @param className the name of the class that implements the resource bundle.
1452   *   @return the ResourceBundle
1453   *   @throws MissingResourceException
1454   */
1455  public static final XSLTErrorResources loadResourceBundle(String className)
1456          throws MissingResourceException
1457  {
1458
1459    Locale locale = Locale.getDefault();
1460    String suffix = getResourceSuffix(locale);
1461
1462    try
1463    {
1464
1465      // first try with the given locale
1466      return (XSLTErrorResources) ResourceBundle.getBundle(className
1467              + suffix, locale);
1468    }
1469    catch (MissingResourceException e)
1470    {
1471      try  // try to fall back to en_US if we can't load
1472      {
1473
1474        // Since we can't find the localized property file,
1475        // fall back to en_US.
1476        return (XSLTErrorResources) ResourceBundle.getBundle(className,
1477                new Locale("en", "US"));
1478      }
1479      catch (MissingResourceException e2)
1480      {
1481
1482        // Now we are really in trouble.
1483        // very bad, definitely very bad...not going to get very far
1484        throw new MissingResourceException(
1485          "Could not load any resource bundles.", className, "");
1486      }
1487    }
1488  }
1489
1490  /**
1491   * Return the resource file suffic for the indicated locale
1492   * For most locales, this will be based the language code.  However
1493   * for Chinese, we do distinguish between Taiwan and PRC
1494   *
1495   * @param locale the locale
1496   * @return an String suffix which canbe appended to a resource name
1497   */
1498  private static final String getResourceSuffix(Locale locale)
1499  {
1500
1501    String suffix = "_" + locale.getLanguage();
1502    String country = locale.getCountry();
1503
1504    if (country.equals("TW"))
1505      suffix += "_" + country;
1506
1507    return suffix;
1508  }
1509
1510
1511}
1512