001 /*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements. See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership. The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the "License");
007 * you may not use this file except in compliance with the License.
008 * You may obtain a copy of the License at
009 *
010 * http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing, software
013 * distributed under the License is distributed on an "AS IS" BASIS,
014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
015 * See the License for the specific language governing permissions and
016 * limitations under the License.
017 */
018 /*
019 * $Id: ErrorMessages.java 468649 2006-10-28 07:00:55Z minchau $
020 */
021
022 package org.apache.xalan.xsltc.compiler.util;
023
024 import java.util.ListResourceBundle;
025
026 /**
027 * @author Morten Jorgensen
028 */
029 public class ErrorMessages extends ListResourceBundle {
030
031 /*
032 * XSLTC compile-time error messages.
033 *
034 * General notes to translators and definitions:
035 *
036 * 1) XSLTC is the name of the product. It is an acronym for "XSLT Compiler".
037 * XSLT is an acronym for "XML Stylesheet Language: Transformations".
038 *
039 * 2) A stylesheet is a description of how to transform an input XML document
040 * into a resultant XML document (or HTML document or text). The
041 * stylesheet itself is described in the form of an XML document.
042 *
043 * 3) A template is a component of a stylesheet that is used to match a
044 * particular portion of an input document and specifies the form of the
045 * corresponding portion of the output document.
046 *
047 * 4) An axis is a particular "dimension" in a tree representation of an XML
048 * document; the nodes in the tree are divided along different axes.
049 * Traversing the "child" axis, for instance, means that the program
050 * would visit each child of a particular node; traversing the "descendant"
051 * axis means that the program would visit the child nodes of a particular
052 * node, their children, and so on until the leaf nodes of the tree are
053 * reached.
054 *
055 * 5) An iterator is an object that traverses nodes in a tree along a
056 * particular axis, one at a time.
057 *
058 * 6) An element is a mark-up tag in an XML document; an attribute is a
059 * modifier on the tag. For example, in <elem attr='val' attr2='val2'>
060 * "elem" is an element name, "attr" and "attr2" are attribute names with
061 * the values "val" and "val2", respectively.
062 *
063 * 7) A namespace declaration is a special attribute that is used to associate
064 * a prefix with a URI (the namespace). The meanings of element names and
065 * attribute names that use that prefix are defined with respect to that
066 * namespace.
067 *
068 * 8) DOM is an acronym for Document Object Model. It is a tree
069 * representation of an XML document.
070 *
071 * SAX is an acronym for the Simple API for XML processing. It is an API
072 * used inform an XML processor (in this case XSLTC) of the structure and
073 * content of an XML document.
074 *
075 * Input to the stylesheet processor can come from an XML parser in the
076 * form of a DOM tree or through the SAX API.
077 *
078 * 9) DTD is a document type declaration. It is a way of specifying the
079 * grammar for an XML file, the names and types of elements, attributes,
080 * etc.
081 *
082 * 10) XPath is a specification that describes a notation for identifying
083 * nodes in a tree-structured representation of an XML document. An
084 * instance of that notation is referred to as an XPath expression.
085 *
086 * 11) Translet is an invented term that refers to the class file that contains
087 * the compiled form of a stylesheet.
088 */
089
090 // These message should be read from a locale-specific resource bundle
091 /** Get the lookup table for error messages.
092 *
093 * @return The message lookup table.
094 */
095 public Object[][] getContents()
096 {
097 return new Object[][] {
098 {ErrorMsg.MULTIPLE_STYLESHEET_ERR,
099 "More than one stylesheet defined in the same file."},
100
101 /*
102 * Note to translators: The substitution text is the name of a
103 * template. The same name was used on two different templates in the
104 * same stylesheet.
105 */
106 {ErrorMsg.TEMPLATE_REDEF_ERR,
107 "Template ''{0}'' already defined in this stylesheet."},
108
109
110 /*
111 * Note to translators: The substitution text is the name of a
112 * template. A reference to the template name was encountered, but the
113 * template is undefined.
114 */
115 {ErrorMsg.TEMPLATE_UNDEF_ERR,
116 "Template ''{0}'' not defined in this stylesheet."},
117
118 /*
119 * Note to translators: The substitution text is the name of a variable
120 * that was defined more than once.
121 */
122 {ErrorMsg.VARIABLE_REDEF_ERR,
123 "Variable ''{0}'' is multiply defined in the same scope."},
124
125 /*
126 * Note to translators: The substitution text is the name of a variable
127 * or parameter. A reference to the variable or parameter was found,
128 * but it was never defined.
129 */
130 {ErrorMsg.VARIABLE_UNDEF_ERR,
131 "Variable or parameter ''{0}'' is undefined."},
132
133 /*
134 * Note to translators: The word "class" here refers to a Java class.
135 * Processing the stylesheet required a class to be loaded, but it could
136 * not be found. The substitution text is the name of the class.
137 */
138 {ErrorMsg.CLASS_NOT_FOUND_ERR,
139 "Cannot find class ''{0}''."},
140
141 /*
142 * Note to translators: The word "method" here refers to a Java method.
143 * Processing the stylesheet required a reference to the method named by
144 * the substitution text, but it could not be found. "public" is the
145 * Java keyword.
146 */
147 {ErrorMsg.METHOD_NOT_FOUND_ERR,
148 "Cannot find external method ''{0}'' (must be public)."},
149
150 /*
151 * Note to translators: The word "method" here refers to a Java method.
152 * Processing the stylesheet required a reference to the method named by
153 * the substitution text, but no method with the required types of
154 * arguments or return type could be found.
155 */
156 {ErrorMsg.ARGUMENT_CONVERSION_ERR,
157 "Cannot convert argument/return type in call to method ''{0}''"},
158
159 /*
160 * Note to translators: The file or URI named in the substitution text
161 * is missing.
162 */
163 {ErrorMsg.FILE_NOT_FOUND_ERR,
164 "File or URI ''{0}'' not found."},
165
166 /*
167 * Note to translators: This message is displayed when the URI
168 * mentioned in the substitution text is not well-formed syntactically.
169 */
170 {ErrorMsg.INVALID_URI_ERR,
171 "Invalid URI ''{0}''."},
172
173 /*
174 * Note to translators: The file or URI named in the substitution text
175 * exists but could not be opened.
176 */
177 {ErrorMsg.FILE_ACCESS_ERR,
178 "Cannot open file or URI ''{0}''."},
179
180 /*
181 * Note to translators: <xsl:stylesheet> and <xsl:transform> are
182 * keywords that should not be translated.
183 */
184 {ErrorMsg.MISSING_ROOT_ERR,
185 "<xsl:stylesheet> or <xsl:transform> element expected."},
186
187 /*
188 * Note to translators: The stylesheet contained a reference to a
189 * namespace prefix that was undefined. The value of the substitution
190 * text is the name of the prefix.
191 */
192 {ErrorMsg.NAMESPACE_UNDEF_ERR,
193 "Namespace prefix ''{0}'' is undeclared."},
194
195 /*
196 * Note to translators: The Java function named in the stylesheet could
197 * not be found.
198 */
199 {ErrorMsg.FUNCTION_RESOLVE_ERR,
200 "Unable to resolve call to function ''{0}''."},
201
202 /*
203 * Note to translators: The substitution text is the name of a
204 * function. A literal string here means a constant string value.
205 */
206 {ErrorMsg.NEED_LITERAL_ERR,
207 "Argument to ''{0}'' must be a literal string."},
208
209 /*
210 * Note to translators: This message indicates there was a syntactic
211 * error in the form of an XPath expression. The substitution text is
212 * the expression.
213 */
214 {ErrorMsg.XPATH_PARSER_ERR,
215 "Error parsing XPath expression ''{0}''."},
216
217 /*
218 * Note to translators: An element in the stylesheet requires a
219 * particular attribute named by the substitution text, but that
220 * attribute was not specified in the stylesheet.
221 */
222 {ErrorMsg.REQUIRED_ATTR_ERR,
223 "Required attribute ''{0}'' is missing."},
224
225 /*
226 * Note to translators: This message indicates that a character not
227 * permitted in an XPath expression was encountered. The substitution
228 * text is the offending character.
229 */
230 {ErrorMsg.ILLEGAL_CHAR_ERR,
231 "Illegal character ''{0}'' in XPath expression."},
232
233 /*
234 * Note to translators: A processing instruction is a mark-up item in
235 * an XML document that request some behaviour of an XML processor. The
236 * form of the name of was invalid in this case, and the substitution
237 * text is the name.
238 */
239 {ErrorMsg.ILLEGAL_PI_ERR,
240 "Illegal name ''{0}'' for processing instruction."},
241
242 /*
243 * Note to translators: This message is reported if the stylesheet
244 * being processed attempted to construct an XML document with an
245 * attribute in a place other than on an element. The substitution text
246 * specifies the name of the attribute.
247 */
248 {ErrorMsg.STRAY_ATTRIBUTE_ERR,
249 "Attribute ''{0}'' outside of element."},
250
251 /*
252 * Note to translators: An attribute that wasn't recognized was
253 * specified on an element in the stylesheet. The attribute is named
254 * by the substitution
255 * text.
256 */
257 {ErrorMsg.ILLEGAL_ATTRIBUTE_ERR,
258 "Illegal attribute ''{0}''."},
259
260 /*
261 * Note to translators: "import" and "include" are keywords that should
262 * not be translated. This messages indicates that the stylesheet
263 * named in the substitution text imported or included itself either
264 * directly or indirectly.
265 */
266 {ErrorMsg.CIRCULAR_INCLUDE_ERR,
267 "Circular import/include. Stylesheet ''{0}'' already loaded."},
268
269 /*
270 * Note to translators: A result-tree fragment is a portion of a
271 * resulting XML document represented as a tree. "<xsl:sort>" is a
272 * keyword and should not be translated.
273 */
274 {ErrorMsg.RESULT_TREE_SORT_ERR,
275 "Result-tree fragments cannot be sorted (<xsl:sort> elements are " +
276 "ignored). You must sort the nodes when creating the result tree."},
277
278 /*
279 * Note to translators: A name can be given to a particular style to be
280 * used to format decimal values. The substitution text gives the name
281 * of such a style for which more than one declaration was encountered.
282 */
283 {ErrorMsg.SYMBOLS_REDEF_ERR,
284 "Decimal formatting ''{0}'' is already defined."},
285
286 /*
287 * Note to translators: The stylesheet version named in the
288 * substitution text is not supported.
289 */
290 {ErrorMsg.XSL_VERSION_ERR,
291 "XSL version ''{0}'' is not supported by XSLTC."},
292
293 /*
294 * Note to translators: The definitions of one or more variables or
295 * parameters depend on one another.
296 */
297 {ErrorMsg.CIRCULAR_VARIABLE_ERR,
298 "Circular variable/parameter reference in ''{0}''."},
299
300 /*
301 * Note to translators: The operator in an expresion with two operands was
302 * not recognized.
303 */
304 {ErrorMsg.ILLEGAL_BINARY_OP_ERR,
305 "Unknown operator for binary expression."},
306
307 /*
308 * Note to translators: This message is produced if a reference to a
309 * function has too many or too few arguments.
310 */
311 {ErrorMsg.ILLEGAL_ARG_ERR,
312 "Illegal argument(s) for function call."},
313
314 /*
315 * Note to translators: "document()" is the name of function and must
316 * not be translated. A node-set is a set of the nodes in the tree
317 * representation of an XML document.
318 */
319 {ErrorMsg.DOCUMENT_ARG_ERR,
320 "Second argument to document() function must be a node-set."},
321
322 /*
323 * Note to translators: "<xsl:when>" and "<xsl:choose>" are keywords
324 * and should not be translated. This message describes a syntax error
325 * in the stylesheet.
326 */
327 {ErrorMsg.MISSING_WHEN_ERR,
328 "At least one <xsl:when> element required in <xsl:choose>."},
329
330 /*
331 * Note to translators: "<xsl:otherwise>" and "<xsl:choose>" are
332 * keywords and should not be translated. This message describes a
333 * syntax error in the stylesheet.
334 */
335 {ErrorMsg.MULTIPLE_OTHERWISE_ERR,
336 "Only one <xsl:otherwise> element allowed in <xsl:choose>."},
337
338 /*
339 * Note to translators: "<xsl:otherwise>" and "<xsl:choose>" are
340 * keywords and should not be translated. This message describes a
341 * syntax error in the stylesheet.
342 */
343 {ErrorMsg.STRAY_OTHERWISE_ERR,
344 "<xsl:otherwise> can only be used within <xsl:choose>."},
345
346 /*
347 * Note to translators: "<xsl:when>" and "<xsl:choose>" are keywords
348 * and should not be translated. This message describes a syntax error
349 * in the stylesheet.
350 */
351 {ErrorMsg.STRAY_WHEN_ERR,
352 "<xsl:when> can only be used within <xsl:choose>."},
353
354 /*
355 * Note to translators: "<xsl:when>", "<xsl:otherwise>" and
356 * "<xsl:choose>" are keywords and should not be translated. This
357 * message describes a syntax error in the stylesheet.
358 */
359 {ErrorMsg.WHEN_ELEMENT_ERR,
360 "Only <xsl:when> and <xsl:otherwise> elements allowed in <xsl:choose>."},
361
362 /*
363 * Note to translators: "<xsl:attribute-set>" and "name" are keywords
364 * that should not be translated.
365 */
366 {ErrorMsg.UNNAMED_ATTRIBSET_ERR,
367 "<xsl:attribute-set> is missing the 'name' attribute."},
368
369 /*
370 * Note to translators: An element in the stylesheet contained an
371 * element of a type that it was not permitted to contain.
372 */
373 {ErrorMsg.ILLEGAL_CHILD_ERR,
374 "Illegal child element."},
375
376 /*
377 * Note to translators: The stylesheet tried to create an element with
378 * a name that was not a valid XML name. The substitution text contains
379 * the name.
380 */
381 {ErrorMsg.ILLEGAL_ELEM_NAME_ERR,
382 "You cannot call an element ''{0}''"},
383
384 /*
385 * Note to translators: The stylesheet tried to create an attribute
386 * with a name that was not a valid XML name. The substitution text
387 * contains the name.
388 */
389 {ErrorMsg.ILLEGAL_ATTR_NAME_ERR,
390 "You cannot call an attribute ''{0}''"},
391
392 /*
393 * Note to translators: The children of the outermost element of a
394 * stylesheet are referred to as top-level elements. No text should
395 * occur within that outermost element unless it is within a top-level
396 * element. This message indicates that that constraint was violated.
397 * "<xsl:stylesheet>" is a keyword that should not be translated.
398 */
399 {ErrorMsg.ILLEGAL_TEXT_NODE_ERR,
400 "Text data outside of top-level <xsl:stylesheet> element."},
401
402 /*
403 * Note to translators: JAXP is an acronym for the Java API for XML
404 * Processing. This message indicates that the XML parser provided to
405 * XSLTC to process the XML input document had a configuration problem.
406 */
407 {ErrorMsg.SAX_PARSER_CONFIG_ERR,
408 "JAXP parser not configured correctly"},
409
410 /*
411 * Note to translators: The substitution text names the internal error
412 * encountered.
413 */
414 {ErrorMsg.INTERNAL_ERR,
415 "Unrecoverable XSLTC-internal error: ''{0}''"},
416
417 /*
418 * Note to translators: The stylesheet contained an element that was
419 * not recognized as part of the XSL syntax. The substitution text
420 * gives the element name.
421 */
422 {ErrorMsg.UNSUPPORTED_XSL_ERR,
423 "Unsupported XSL element ''{0}''."},
424
425 /*
426 * Note to translators: The stylesheet referred to an extension to the
427 * XSL syntax and indicated that it was defined by XSLTC, but XSTLC does
428 * not recognized the particular extension named. The substitution text
429 * gives the extension name.
430 */
431 {ErrorMsg.UNSUPPORTED_EXT_ERR,
432 "Unrecognised XSLTC extension ''{0}''."},
433
434 /*
435 * Note to translators: The XML document given to XSLTC as a stylesheet
436 * was not, in fact, a stylesheet. XSLTC is able to detect that in this
437 * case because the outermost element in the stylesheet has to be
438 * declared with respect to the XSL namespace URI, but no declaration
439 * for that namespace was seen.
440 */
441 {ErrorMsg.MISSING_XSLT_URI_ERR,
442 "The input document is not a stylesheet (the XSL namespace is not "+
443 "declared in the root element)."},
444
445 /*
446 * Note to translators: XSLTC could not find the stylesheet document
447 * with the name specified by the substitution text.
448 */
449 {ErrorMsg.MISSING_XSLT_TARGET_ERR,
450 "Could not find stylesheet target ''{0}''."},
451
452 /*
453 * Note to translators: This message represents an internal error in
454 * condition in XSLTC. The substitution text is the class name in XSLTC
455 * that is missing some functionality.
456 */
457 {ErrorMsg.NOT_IMPLEMENTED_ERR,
458 "Not implemented: ''{0}''."},
459
460 /*
461 * Note to translators: The XML document given to XSLTC as a stylesheet
462 * was not, in fact, a stylesheet.
463 */
464 {ErrorMsg.NOT_STYLESHEET_ERR,
465 "The input document does not contain an XSL stylesheet."},
466
467 /*
468 * Note to translators: The element named in the substitution text was
469 * encountered in the stylesheet but is not recognized.
470 */
471 {ErrorMsg.ELEMENT_PARSE_ERR,
472 "Could not parse element ''{0}''"},
473
474 /*
475 * Note to translators: "use", "<key>", "node", "node-set", "string"
476 * and "number" are keywords in this context and should not be
477 * translated. This message indicates that the value of the "use"
478 * attribute was not one of the permitted values.
479 */
480 {ErrorMsg.KEY_USE_ATTR_ERR,
481 "The use attribute of <key> must be node, node-set, string or number."},
482
483 /*
484 * Note to translators: An XML document can specify the version of the
485 * XML specification to which it adheres. This message indicates that
486 * the version specified for the output document was not valid.
487 */
488 {ErrorMsg.OUTPUT_VERSION_ERR,
489 "Output XML document version should be 1.0"},
490
491 /*
492 * Note to translators: The operator in a comparison operation was
493 * not recognized.
494 */
495 {ErrorMsg.ILLEGAL_RELAT_OP_ERR,
496 "Unknown operator for relational expression"},
497
498 /*
499 * Note to translators: An attribute set defines as a set of XML
500 * attributes that can be added to an element in the output XML document
501 * as a group. This message is reported if the name specified was not
502 * used to declare an attribute set. The substitution text is the name
503 * that is in error.
504 */
505 {ErrorMsg.ATTRIBSET_UNDEF_ERR,
506 "Attempting to use non-existing attribute set ''{0}''."},
507
508 /*
509 * Note to translators: The term "attribute value template" is a term
510 * defined by XSLT which describes the value of an attribute that is
511 * determined by an XPath expression. The message indicates that the
512 * expression was syntactically incorrect; the substitution text
513 * contains the expression that was in error.
514 */
515 {ErrorMsg.ATTR_VAL_TEMPLATE_ERR,
516 "Cannot parse attribute value template ''{0}''."},
517
518 /*
519 * Note to translators: ???
520 */
521 {ErrorMsg.UNKNOWN_SIG_TYPE_ERR,
522 "Unknown data-type in signature for class ''{0}''."},
523
524 /*
525 * Note to translators: The substitution text refers to data types.
526 * The message is displayed if a value in a particular context needs to
527 * be converted to type {1}, but that's not possible for a value of
528 * type {0}.
529 */
530 {ErrorMsg.DATA_CONVERSION_ERR,
531 "Cannot convert data-type ''{0}'' to ''{1}''."},
532
533 /*
534 * Note to translators: "Templates" is a Java class name that should
535 * not be translated.
536 */
537 {ErrorMsg.NO_TRANSLET_CLASS_ERR,
538 "This Templates does not contain a valid translet class definition."},
539
540 /*
541 * Note to translators: "Templates" is a Java class name that should
542 * not be translated.
543 */
544 {ErrorMsg.NO_MAIN_TRANSLET_ERR,
545 "This Templates does not contain a class with the name ''{0}''."},
546
547 /*
548 * Note to translators: The substitution text is the name of a class.
549 */
550 {ErrorMsg.TRANSLET_CLASS_ERR,
551 "Could not load the translet class ''{0}''."},
552
553 {ErrorMsg.TRANSLET_OBJECT_ERR,
554 "Translet class loaded, but unable to create translet instance."},
555
556 /*
557 * Note to translators: "ErrorListener" is a Java interface name that
558 * should not be translated. The message indicates that the user tried
559 * to set an ErrorListener object on object of the class named in the
560 * substitution text with "null" Java value.
561 */
562 {ErrorMsg.ERROR_LISTENER_NULL_ERR,
563 "Attempting to set ErrorListener for ''{0}'' to null"},
564
565 /*
566 * Note to translators: StreamSource, SAXSource and DOMSource are Java
567 * interface names that should not be translated.
568 */
569 {ErrorMsg.JAXP_UNKNOWN_SOURCE_ERR,
570 "Only StreamSource, SAXSource and DOMSource are supported by XSLTC"},
571
572 /*
573 * Note to translators: "Source" is a Java class name that should not
574 * be translated. The substitution text is the name of Java method.
575 */
576 {ErrorMsg.JAXP_NO_SOURCE_ERR,
577 "Source object passed to ''{0}'' has no contents."},
578
579 /*
580 * Note to translators: The message indicates that XSLTC failed to
581 * compile the stylesheet into a translet (class file).
582 */
583 {ErrorMsg.JAXP_COMPILE_ERR,
584 "Could not compile stylesheet"},
585
586 /*
587 * Note to translators: "TransformerFactory" is a class name. In this
588 * context, an attribute is a property or setting of the
589 * TransformerFactory object. The substitution text is the name of the
590 * unrecognised attribute. The method used to retrieve the attribute is
591 * "getAttribute", so it's not clear whether it would be best to
592 * translate the term "attribute".
593 */
594 {ErrorMsg.JAXP_INVALID_ATTR_ERR,
595 "TransformerFactory does not recognise attribute ''{0}''."},
596
597 /*
598 * Note to translators: "setResult()" and "startDocument()" are Java
599 * method names that should not be translated.
600 */
601 {ErrorMsg.JAXP_SET_RESULT_ERR,
602 "setResult() must be called prior to startDocument()."},
603
604 /*
605 * Note to translators: "Transformer" is a Java interface name that
606 * should not be translated. A Transformer object should contained a
607 * reference to a translet object in order to be used for
608 * transformations; this message is produced if that requirement is not
609 * met.
610 */
611 {ErrorMsg.JAXP_NO_TRANSLET_ERR,
612 "The Transformer has no encapsulated translet object."},
613
614 /*
615 * Note to translators: The XML document that results from a
616 * transformation needs to be sent to an output handler object; this
617 * message is produced if that requirement is not met.
618 */
619 {ErrorMsg.JAXP_NO_HANDLER_ERR,
620 "No defined output handler for transformation result."},
621
622 /*
623 * Note to translators: "Result" is a Java interface name in this
624 * context. The substitution text is a method name.
625 */
626 {ErrorMsg.JAXP_NO_RESULT_ERR,
627 "Result object passed to ''{0}'' is invalid."},
628
629 /*
630 * Note to translators: "Transformer" is a Java interface name. The
631 * user's program attempted to access an unrecognized property with the
632 * name specified in the substitution text. The method used to retrieve
633 * the property is "getOutputProperty", so it's not clear whether it
634 * would be best to translate the term "property".
635 */
636 {ErrorMsg.JAXP_UNKNOWN_PROP_ERR,
637 "Attempting to access invalid Transformer property ''{0}''."},
638
639 /*
640 * Note to translators: SAX2DOM is the name of a Java class that should
641 * not be translated. This is an adapter in the sense that it takes a
642 * DOM object and converts it to something that uses the SAX API.
643 */
644 {ErrorMsg.SAX2DOM_ADAPTER_ERR,
645 "Could not create SAX2DOM adapter: ''{0}''."},
646
647 /*
648 * Note to translators: "XSLTCSource.build()" is a Java method name.
649 * "systemId" is an XML term that is short for "system identification".
650 */
651 {ErrorMsg.XSLTC_SOURCE_ERR,
652 "XSLTCSource.build() called without systemId being set."},
653
654 { ErrorMsg.ER_RESULT_NULL,
655 "Result should not be null"},
656
657 /*
658 * Note to translators: This message indicates that the value argument
659 * of setParameter must be a valid Java Object.
660 */
661 {ErrorMsg.JAXP_INVALID_SET_PARAM_VALUE,
662 "The value of param {0} must be a valid Java Object"},
663
664
665 {ErrorMsg.COMPILE_STDIN_ERR,
666 "The -i option must be used with the -o option."},
667
668
669 /*
670 * Note to translators: This message contains usage information for a
671 * means of invoking XSLTC from the command-line. The message is
672 * formatted for presentation in English. The strings <output>,
673 * <directory>, etc. indicate user-specified argument values, and can
674 * be translated - the argument <package> refers to a Java package, so
675 * it should be handled in the same way the term is handled for JDK
676 * documentation.
677 */
678 {ErrorMsg.COMPILE_USAGE_STR,
679 "SYNOPSIS\n"+
680 " java org.apache.xalan.xsltc.cmdline.Compile [-o <output>]\n"+
681 " [-d <directory>] [-j <jarfile>] [-p <package>]\n"+
682 " [-n] [-x] [-u] [-v] [-h] { <stylesheet> | -i }\n\n"+
683 "OPTIONS\n"+
684 " -o <output> assigns the name <output> to the generated\n"+
685 " translet. By default the translet name is\n"+
686 " derived from the <stylesheet> name. This option\n"+
687 " is ignored if compiling multiple stylesheets.\n"+
688 " -d <directory> specifies a destination directory for translet\n"+
689 " -j <jarfile> packages translet classes into a jar file of the\n"+
690 " name specified as <jarfile>\n"+
691 " -p <package> specifies a package name prefix for all generated\n"+
692 " translet classes.\n"+
693 " -n enables template inlining (default behavior better\n"+
694 " on average).\n"+
695 " -x turns on additional debugging message output\n"+
696 " -u interprets <stylesheet> arguments as URLs\n"+
697 " -i forces compiler to read stylesheet from stdin\n"+
698 " -v prints the version of the compiler\n"+
699 " -h prints this usage statement\n"},
700
701 /*
702 * Note to translators: This message contains usage information for a
703 * means of invoking XSLTC from the command-line. The message is
704 * formatted for presentation in English. The strings <jarfile>,
705 * <document>, etc. indicate user-specified argument values, and can
706 * be translated - the argument <class> refers to a Java class, so it
707 * should be handled in the same way the term is handled for JDK
708 * documentation.
709 */
710 {ErrorMsg.TRANSFORM_USAGE_STR,
711 "SYNOPSIS \n"+
712 " java org.apache.xalan.xsltc.cmdline.Transform [-j <jarfile>]\n"+
713 " [-x] [-n <iterations>] {-u <document_url> | <document>}\n"+
714 " <class> [<param1>=<value1> ...]\n\n"+
715 " uses the translet <class> to transform an XML document \n"+
716 " specified as <document>. The translet <class> is either in\n"+
717 " the user's CLASSPATH or in the optionally specified <jarfile>.\n"+
718 "OPTIONS\n"+
719 " -j <jarfile> specifies a jarfile from which to load translet\n"+
720 " -x turns on additional debugging message output\n"+
721 " -n <iterations> runs the transformation <iterations> times and\n"+
722 " displays profiling information\n"+
723 " -u <document_url> specifies XML input document as a URL\n"},
724
725
726
727 /*
728 * Note to translators: "<xsl:sort>", "<xsl:for-each>" and
729 * "<xsl:apply-templates>" are keywords that should not be translated.
730 * The message indicates that an xsl:sort element must be a child of
731 * one of the other kinds of elements mentioned.
732 */
733 {ErrorMsg.STRAY_SORT_ERR,
734 "<xsl:sort> can only be used within <xsl:for-each> or <xsl:apply-templates>."},
735
736 /*
737 * Note to translators: The message indicates that the encoding
738 * requested for the output document was on that requires support that
739 * is not available from the Java Virtual Machine being used to execute
740 * the program.
741 */
742 {ErrorMsg.UNSUPPORTED_ENCODING,
743 "Output encoding ''{0}'' is not supported on this JVM."},
744
745 /*
746 * Note to translators: The message indicates that the XPath expression
747 * named in the substitution text was not well formed syntactically.
748 */
749 {ErrorMsg.SYNTAX_ERR,
750 "Syntax error in ''{0}''."},
751
752 /*
753 * Note to translators: The substitution text is the name of a Java
754 * class. The term "constructor" here is the Java term. The message is
755 * displayed if XSLTC could not find a constructor for the specified
756 * class.
757 */
758 {ErrorMsg.CONSTRUCTOR_NOT_FOUND,
759 "Cannot find external constructor ''{0}''."},
760
761 /*
762 * Note to translators: "static" is the Java keyword. The substitution
763 * text is the name of a function. The first argument of that function
764 * is not of the required type.
765 */
766 {ErrorMsg.NO_JAVA_FUNCT_THIS_REF,
767 "The first argument to the non-static Java function ''{0}'' is not a "+
768 "valid object reference."},
769
770 /*
771 * Note to translators: An XPath expression was not of the type
772 * required in a particular context. The substitution text is the
773 * expression that was in error.
774 */
775 {ErrorMsg.TYPE_CHECK_ERR,
776 "Error checking type of the expression ''{0}''."},
777
778 /*
779 * Note to translators: An XPath expression was not of the type
780 * required in a particular context. However, the location of the
781 * problematic expression is unknown.
782 */
783 {ErrorMsg.TYPE_CHECK_UNK_LOC_ERR,
784 "Error checking type of an expression at an unknown location."},
785
786 /*
787 * Note to translators: The substitution text is the name of a command-
788 * line option that was not recognized.
789 */
790 {ErrorMsg.ILLEGAL_CMDLINE_OPTION_ERR,
791 "The command-line option ''{0}'' is not valid."},
792
793 /*
794 * Note to translators: The substitution text is the name of a command-
795 * line option.
796 */
797 {ErrorMsg.CMDLINE_OPT_MISSING_ARG_ERR,
798 "The command-line option ''{0}'' is missing a required argument."},
799
800 /*
801 * Note to translators: This message is used to indicate the severity
802 * of another message. The substitution text contains two error
803 * messages. The spacing before the second substitution text indents
804 * it the same amount as the first in English.
805 */
806 {ErrorMsg.WARNING_PLUS_WRAPPED_MSG,
807 "WARNING: ''{0}''\n :{1}"},
808
809 /*
810 * Note to translators: This message is used to indicate the severity
811 * of another message. The substitution text is an error message.
812 */
813 {ErrorMsg.WARNING_MSG,
814 "WARNING: ''{0}''"},
815
816 /*
817 * Note to translators: This message is used to indicate the severity
818 * of another message. The substitution text contains two error
819 * messages. The spacing before the second substitution text indents
820 * it the same amount as the first in English.
821 */
822 {ErrorMsg.FATAL_ERR_PLUS_WRAPPED_MSG,
823 "FATAL ERROR: ''{0}''\n :{1}"},
824
825 /*
826 * Note to translators: This message is used to indicate the severity
827 * of another message. The substitution text is an error message.
828 */
829 {ErrorMsg.FATAL_ERR_MSG,
830 "FATAL ERROR: ''{0}''"},
831
832 /*
833 * Note to translators: This message is used to indicate the severity
834 * of another message. The substitution text contains two error
835 * messages. The spacing before the second substitution text indents
836 * it the same amount as the first in English.
837 */
838 {ErrorMsg.ERROR_PLUS_WRAPPED_MSG,
839 "ERROR: ''{0}''\n :{1}"},
840
841 /*
842 * Note to translators: This message is used to indicate the severity
843 * of another message. The substitution text is an error message.
844 */
845 {ErrorMsg.ERROR_MSG,
846 "ERROR: ''{0}''"},
847
848 /*
849 * Note to translators: The substitution text is the name of a class.
850 */
851 {ErrorMsg.TRANSFORM_WITH_TRANSLET_STR,
852 "Transform using translet ''{0}'' "},
853
854 /*
855 * Note to translators: The first substitution is the name of a class,
856 * while the second substitution is the name of a jar file.
857 */
858 {ErrorMsg.TRANSFORM_WITH_JAR_STR,
859 "Transform using translet ''{0}'' from jar file ''{1}''"},
860
861 /*
862 * Note to translators: "TransformerFactory" is the name of a Java
863 * interface and must not be translated. The substitution text is
864 * the name of the class that could not be instantiated.
865 */
866 {ErrorMsg.COULD_NOT_CREATE_TRANS_FACT,
867 "Could not create an instance of the TransformerFactory class ''{0}''."},
868
869 /*
870 * Note to translators: This message is produced when the user
871 * specified a name for the translet class that contains characters
872 * that are not permitted in a Java class name. The substitution
873 * text "{0}" specifies the name the user requested, while "{1}"
874 * specifies the name the processor used instead.
875 */
876 {ErrorMsg.TRANSLET_NAME_JAVA_CONFLICT,
877 "The name ''{0}'' could not be used as the name of the translet "+
878 "class because it contains characters that are not permitted in the "+
879 "name of Java class. The name ''{1}'' was used instead."},
880
881 /*
882 * Note to translators: The following message is used as a header.
883 * All the error messages are collected together and displayed beneath
884 * this message.
885 */
886 {ErrorMsg.COMPILER_ERROR_KEY,
887 "Compiler errors:"},
888
889 /*
890 * Note to translators: The following message is used as a header.
891 * All the warning messages are collected together and displayed
892 * beneath this message.
893 */
894 {ErrorMsg.COMPILER_WARNING_KEY,
895 "Compiler warnings:"},
896
897 /*
898 * Note to translators: The following message is used as a header.
899 * All the error messages that are produced when the stylesheet is
900 * applied to an input document are collected together and displayed
901 * beneath this message. A 'translet' is the compiled form of a
902 * stylesheet (see above).
903 */
904 {ErrorMsg.RUNTIME_ERROR_KEY,
905 "Translet errors:"},
906
907 /*
908 * Note to translators: An attribute whose value is constrained to
909 * be a "QName" or a list of "QNames" had a value that was incorrect.
910 * 'QName' is an XML syntactic term that must not be translated. The
911 * substitution text contains the actual value of the attribute.
912 */
913 {ErrorMsg.INVALID_QNAME_ERR,
914 "An attribute whose value must be a QName or whitespace-separated list of QNames had the value ''{0}''"},
915
916 /*
917 * Note to translators: An attribute whose value is required to
918 * be an "NCName".
919 * 'NCName' is an XML syntactic term that must not be translated. The
920 * substitution text contains the actual value of the attribute.
921 */
922 {ErrorMsg.INVALID_NCNAME_ERR,
923 "An attribute whose value must be an NCName had the value ''{0}''"},
924
925 /*
926 * Note to translators: An attribute with an incorrect value was
927 * encountered. The permitted value is one of the literal values
928 * "xml", "html" or "text"; it is also permitted to have the form of
929 * a QName that is not also an NCName. The terms "method",
930 * "xsl:output", "xml", "html" and "text" are keywords that must not
931 * be translated. The term "qname-but-not-ncname" is an XML syntactic
932 * term. The substitution text contains the actual value of the
933 * attribute.
934 */
935 {ErrorMsg.INVALID_METHOD_IN_OUTPUT,
936 "The method attribute of an <xsl:output> element had the value ''{0}''. The value must be one of ''xml'', ''html'', ''text'', or qname-but-not-ncname"},
937
938 {ErrorMsg.JAXP_GET_FEATURE_NULL_NAME,
939 "The feature name cannot be null in TransformerFactory.getFeature(String name)."},
940
941 {ErrorMsg.JAXP_SET_FEATURE_NULL_NAME,
942 "The feature name cannot be null in TransformerFactory.setFeature(String name, boolean value)."},
943
944 {ErrorMsg.JAXP_UNSUPPORTED_FEATURE,
945 "Cannot set the feature ''{0}'' on this TransformerFactory."},
946
947 /*
948 * Note to translators: This message describes an internal error in the
949 * processor. The term "byte code" is a Java technical term for the
950 * executable code in a Java method, and "try-catch-finally block"
951 * refers to the Java keywords with those names. "Outlined" is a
952 * technical term internal to XSLTC and should not be translated.
953 */
954 {ErrorMsg.OUTLINE_ERR_TRY_CATCH,
955 "Internal XSLTC error: the generated byte code contains a " +
956 "try-catch-finally block and cannot be outlined."},
957
958 /*
959 * Note to translators: This message describes an internal error in the
960 * processor. The terms "OutlineableChunkStart" and
961 * "OutlineableChunkEnd" are the names of classes internal to XSLTC and
962 * should not be translated. The message indicates that for every
963 * "start" there must be a corresponding "end", and vice versa, and
964 * that if one of a pair of "start" and "end" appears between another
965 * pair of corresponding "start" and "end", then the other half of the
966 * pair must also be between that same enclosing pair.
967 */
968 {ErrorMsg.OUTLINE_ERR_UNBALANCED_MARKERS,
969 "Internal XSLTC error: OutlineableChunkStart and " +
970 "OutlineableChunkEnd markers must be balanced and properly nested."},
971
972 /*
973 * Note to translators: This message describes an internal error in the
974 * processor. The term "byte code" is a Java technical term for the
975 * executable code in a Java method. The "method" that is being
976 * referred to is a Java method in a translet that XSLTC is generating
977 * in processing a stylesheet. The "instruction" that is being
978 * referred to is one of the instrutions in the Java byte code in that
979 * method. "Outlined" is a technical term internal to XSLTC and
980 * should not be translated.
981 */
982 {ErrorMsg.OUTLINE_ERR_DELETED_TARGET,
983 "Internal XSLTC error: an instruction that was part of a block of " +
984 "byte code that was outlined is still referred to in the original "+
985 "method."
986 },
987
988
989 /*
990 * Note to translators: This message describes an internal error in the
991 * processor. The "method" that is being referred to is a Java method
992 * in a translet that XSLTC is generating.
993 *
994 */
995 {ErrorMsg.OUTLINE_ERR_METHOD_TOO_BIG,
996 "Internal XSLTC error: a method in the translet exceeds the Java " +
997 "Virtual Machine limitation on the length of a method of 64 "+
998 "kilobytes. This is usually caused by templates in a stylesheet " +
999 "that are very large. Try restructuring your stylesheet to use " +
1000 "smaller templates."
1001 }
1002 };
1003 }
1004 }