/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.apache.xalan.templates;

/**
 * Specification of primary constant values used in the 
 * TransformerImpl classes.
 * 
 * @xsl.usage advanced
 */
public class Constants extends org.apache.xml.utils.Constants
{

  /**
   * IDs for XSL element types. These are associated
   * with the string literals in the TransformerImpl class.
   * Don't change the numbers. NOTE THAT THESE ARE NOT IN
   * ALPHABETICAL ORDER.
   */
  public static final int ELEMNAME_UNDEFINED = -1, ELEMNAME_WITHPARAM = 2,
                          ELEMNAME_ADDATTRIBUTE = 4, ELEMNAME_ANCHOR = 22,

  ELEMNAME_APPLY_TEMPLATES = 50, ELEMNAME_USE = 34, ELEMNAME_CHILDREN = 6,
                                 ELEMNAME_CHOOSE = 37, ELEMNAME_COMMENT = 59,  // my own
                                 ELEMNAME_CONSTRUCT = 7,  // my own
                                 ELEMNAME_CONTENTS = 8, ELEMNAME_COPY = 9,
                                 ELEMNAME_COPY_OF = 74,
                                 ELEMNAME_DECIMALFORMAT = 83,
                                 ELEMNAME_DEFINEATTRIBUTESET = 40,

  ELEMNAME_DEFINESCRIPT = 11, ELEMNAME_DISPLAYIF = 12,  // my own
                              ELEMNAME_EMPTY = 14, ELEMNAME_EVAL = 15,
                              ELEMNAME_EXPECTEDCHILDREN = 16,
                              ELEMNAME_EXTENSION = 54,
                              ELEMNAME_EXTENSIONHANDLER = 63,
                              ELEMNAME_FOREACH = 28, ELEMNAME_KEY = 31,
                              ELEMNAME_IF = 36, ELEMNAME_IMPORT = 26,
                              ELEMNAME_INCLUDE = 27,
                              ELEMNAME_CALLTEMPLATE = 17,
                              ELEMNAME_PARAMVARIABLE = 41,
                              ELEMNAME_NUMBER = 35, ELEMNAME_NSALIAS = 84,
                              ELEMNAME_OTHERWISE = 39, ELEMNAME_PI = 58,
                              ELEMNAME_PRESERVESPACE = 33,
                              ELEMNAME_REMOVEATTRIBUTE = 5,
                              ELEMNAME_TEMPLATE = 19, ELEMNAME_SORT = 64,
                              ELEMNAME_STRIPSPACE = 32,
                              ELEMNAME_STYLESHEET = 25, ELEMNAME_TEXT = 42,
                              ELEMNAME_VALUEOF = 30, ELEMNAME_WHEN = 38,

  // Pattern by example support  
  ELEMNAME_ROOT = 44, ELEMNAME_ANY = 45, ELEMNAME_ELEMENT = 46,
                      ELEMNAME_TARGETELEMENT = 47, ELEMNAME_ATTRIBUTE = 48,
                      ELEMNAME_TARGETATTRIBUTE = 49, ELEMNAME_URL = 52,  // my own
                      ELEMNAME_CALL = 55,  // my own

  ELEMNAME_FALLBACK = 57,  // my own
  ELEMNAME_TARGETPI = 60,  // my own
  ELEMNAME_TARGETCOMMENT = 61,  // my own
  ELEMNAME_TARGETTEXT = 62,  // my own
  ELEMNAME_CSSSTYLECONVERSION = 65,  // my own
  ELEMNAME_COUNTER = 66, ELEMNAME_COUNTERS = 67,
  ELEMNAME_COUNTERINCREMENT = 68, ELEMNAME_COUNTERRESET = 69,
  ELEMNAME_COUNTERSCOPE = 71, ELEMNAME_APPLY_IMPORTS = 72,
  ELEMNAME_VARIABLE = 73, ELEMNAME_MESSAGE = 75, ELEMNAME_LOCALE = 76,
  ELEMNAME_LITERALRESULT = 77, ELEMNAME_TEXTLITERALRESULT = 78,
  ELEMNAME_EXTENSIONCALL = 79, ELEMNAME_EXTENSIONDECL = 85,
  ELEMNAME_EXTENSIONSCRIPT = 86, ELEMNAME_OUTPUT = 80,
  ELEMNAME_COMPONENT = 81, ELEMNAME_SCRIPT = 82,
  
  ELEMNAME_FOREACHGROUP = 90, ELEMNAME_ANALYZESTRING = 91,  
  ELEMNAME_MATCHING_SUBSTRING = 92, ELEMNAME_NON_MATCHING_SUBSTRING = 93,  
  ELEMNAME_ITERATE = 94, ELEMNAME_ITERATE_ONCOMPLETION = 95,  
  ELEMNAME_ITERATE_NEXTITERATION = 96, ELEMNAME_ITERATE_BREAK = 97,  
  ELEMNAME_FUNCTION = 98, ELEMNAME_SEQUENCE = 99,  
  ELEMNAME_IMPORT_SCHEMA = 100, ELEMNAME_EVALUATE = 101,  
  ELEMNAME_MERGE = 102, ELEMNAME_MERGE_SOURCE = 103,  
  ELEMNAME_MERGE_KEY = 104, ELEMNAME_MERGE_ACTION = 105,  
  ELEMNAME_SOURCEDOCUMENT = 106, ELEMNAME_FORK = 107,  
  ELEMNAME_RESULTDOCUMENT = 108, ELEMNAME_TRY = 109,  
  ELEMNAME_CATCH = 110, ELEMNAME_CHARACTER_MAP = 111,  
  ELEMNAME_OUTPUT_CHARACTER = 112, ELEMNAME_CONTEXT_ITEM = 113,  
  ELEMNAME_DOCUMENT = 114, ELEMNAME_MODE = 115,  
  ELEMNAME_NAMESPACE = 116,
  ELEMNAME_ASSERT = 117,
  ELEMNAME_PERFORMSORT = 118,
  ELEMNAME_USE_PACKAGE = 119,
  ELEMNAME_ACCEPT = 120,
  ELEMNAME_GLOBAL_CONTEXT_ITEM = 121;
  
  // next available number : 122

  /**
   * Literals for XSL element names. Note that there are more
   * names than IDs, because some names map to the same ID.
   */
  public static final String       
	  ELEMNAME_ANCHOR_STRING = "anchor",
      ELEMNAME_ANY_STRING = "any",  // pattern-by-example support
      ELEMNAME_APPLY_IMPORTS_STRING = "apply-imports",
      ELEMNAME_APPLY_TEMPLATES_STRING = "apply-templates",
      ELEMNAME_ARG_STRING = "arg",
      ELEMNAME_ATTRIBUTESET_STRING = "attribute-set",
      ELEMNAME_ATTRIBUTE_STRING = "attribute",  // pattern-by-example support
      ELEMNAME_CALLTEMPLATEARG_STRING = "invoke-arg",
      ELEMNAME_CALLTEMPLATE_STRING = "call-template",
      ELEMNAME_CALL_STRING = "call",
      ELEMNAME_CHILDREN_STRING = "children",
      ELEMNAME_CHOOSE_STRING = "choose",
      ELEMNAME_COMMENT_STRING = "comment",
      ELEMNAME_COMPONENT_STRING = "component",
      ELEMNAME_CONSTRUCT_STRING = "construct",  // my own
      ELEMNAME_CONTENTS_STRING = "contents", 
      ELEMNAME_COPY_OF_STRING ="copy-of",
      ELEMNAME_COPY_STRING = "copy",
      ELEMNAME_COUNTERINCREMENT_STRING = "counter-increment",
      ELEMNAME_COUNTERRESET_STRING = "counter-reset",
      ELEMNAME_COUNTERSCOPE_STRING = "counter-scope",
      ELEMNAME_COUNTERS_STRING = "counters",
      ELEMNAME_COUNTER_STRING = "counter",
      ELEMNAME_CSSSTYLECONVERSION_STRING = "css-style-conversion",
      ELEMNAME_DECIMALFORMAT_STRING = "decimal-format",
      ELEMNAME_DISPLAYIF_STRING = "display-if",  // my own
      ELEMNAME_ELEMENT_STRING = "element",  // pattern-by-example support
      ELEMNAME_EMPTY_STRING = "empty",
      ELEMNAME_EVAL_STRING = "eval",
      ELEMNAME_EXPECTEDCHILDREN_STRING = "expectedchildren",
      ELEMNAME_EXTENSIONHANDLER_STRING = "code-dispatcher",
      ELEMNAME_EXTENSION_STRING = "functions",
      ELEMNAME_FALLBACK_STRING = "fallback",
      ELEMNAME_FOREACH_STRING = "for-each",
      ELEMNAME_PERFORMSORT_STRING = "perform-sort",
      ELEMNAME_FOREACHGROUP_STRING = "for-each-group",
      ELEMNAME_SOURCEDOCUMENT_STRING = "source-document",
      ELEMNAME_FORK_STRING = "fork",
      ELEMNAME_RESULTDOCUMENT_STRING = "result-document",
      ELEMNAME_MERGE_STRING = "merge",
      ELEMNAME_MERGE_SOURCE_STRING = "merge-source",
      ELEMNAME_MERGE_KEY_STRING = "merge-key",
      ELEMNAME_MERGE_ACTION_STRING = "merge-action",
      ELEMNAME_TRY_STRING = "try",
      ELEMNAME_CATCH_STRING = "catch",
      ELEMNAME_ANALYZESTRING_STRING = "analyze-string",
      ELEMNAME_MATCHINGSUBSTRING_STRING = "matching-substring",
      ELEMNAME_NONMATCHINGSUBSTRING_STRING = "non-matching-substring",
      ELEMNAME_ITERATE_STRING = "iterate",
      ELEMNAME_ITERATE_ONCOMPLETION_STRING = "on-completion",
      ELEMNAME_ITERATE_NEXTITERATION_STRING = "next-iteration",
      ELEMNAME_ITERATE_BREAK_STRING = "break",
      ELEMNAME_IF_STRING = "if",
      ELEMNAME_IMPORT_STRING = "import",
      ELEMNAME_INCLUDE_STRING = "include",
      ELEMNAME_KEY_STRING = "key",
      ELEMNAME_LOCALE_STRING = "locale",
      ELEMNAME_MESSAGE_STRING = "message",
      ELEMNAME_NSALIAS_STRING = "namespace-alias",
      ELEMNAME_NUMBER_STRING = "number",
      ELEMNAME_OTHERWISE_STRING = "otherwise",
      ELEMNAME_OUTPUT_STRING = "output",
      ELEMNAME_PARAMVARIABLE_STRING = "param",
      ELEMNAME_PI_OLD_STRING = "pi",
      ELEMNAME_PI_STRING = "processing-instruction",
      ELEMNAME_PRESERVESPACE_STRING = "preserve-space",
      ELEMNAME_ROOT_STRING = "root",  // pattern-by-example support
      ELEMNAME_SCRIPT_STRING = "script",
      ELEMNAME_SORT_STRING = "sort",
      ELEMNAME_STRIPSPACE_STRING = "strip-space",
      ELEMNAME_STYLESHEET_STRING = "stylesheet",
      ELEMNAME_TARGETATTRIBUTE_STRING = "target-attribute",  // pattern-by-example support
      ELEMNAME_TARGETCOMMENT_STRING = "target-comment",
      ELEMNAME_TARGETELEMENT_STRING = "target-element",  // pattern-by-example support
      ELEMNAME_TARGETPI_STRING = "target-pi",
      ELEMNAME_TARGETTEXT_STRING = "target-text",
      ELEMNAME_TEMPLATE_STRING = "template",
      ELEMNAME_USE_PACKEGE_STRING = "use-package",
      ELEMNAME_ACCEPT_STRING = "accept",
      
      ELEMNAME_TEXT_STRING = "text",
      ELEMNAME_TRANSFORM_STRING = "transform",
      ELEMNAME_URL_STRING = "uri",  // pattern-by-example support
      ELEMNAME_USE_STRING = "use",
      ELEMNAME_VALUEOF_STRING = "value-of",
      ELEMNAME_VARIABLE_STRING = "variable",
      ELEMNAME_WHEN_STRING = "when",
      ELEMNAME_WITHPARAM_STRING = "with-param",
      ELEMNAME_FUNCTION_STRING = "function",
      ELEMNAME_SEQUENCE_STRING = "sequence",
      ELEMNAME_IMPORT_SCHEMA_STRING = "import-schema",
      ELEMNAME_EVALUATE_STRING = "evaluate",
      ELEMNAME_CHARACTER_MAP_STRING = "character-map",
      ELEMNAME_OUTPUT_CHARACTER_STRING = "output-character",
      
      XS_VALIDATION_STRICT_STRING = "strict",
      XS_VALIDATION_LAX_STRING = "lax",
      XS_VALIDATION_PRESERVE_STRING = "preserve",
      XS_VALIDATION_STRIP_STRING = "strip",      
      XS_VALIDATION_UNSPECIFIED_STRING = "unspecified",
      
      ELEMNAME_CONTEXT_ITEM_STRING = "context-item",
      ELEMNAME_DOCUMENT_STRING ="document",
      ELEMNAME_NAMESPACE_STRING = "namespace",
      ELEMNAME_ASSERT_STRING = "assert",
      ELEMNAME_GLOBAL_CONTEXT_ITEM_STRING = "global-context-item";
  
  /**
   * Literals for EXSLT function elements.
   */
  public static final String
    EXSLT_ELEMNAME_FUNCTION_STRING = "function",
    EXSLT_ELEMNAME_FUNCRESULT_STRING = "result";
  public static final int
    EXSLT_ELEMNAME_FUNCTION = 88,
    EXSLT_ELEMNAME_FUNCRESULT = 89;
  
  
  /**
   * Literals for XSL attribute names. Note that there may be more
   * names than IDs, because some names may map to the same ID.
   */
  public static final String
	  ATTRNAME_AMOUNT = "amount",
      ATTRNAME_ANCESTOR = "ancestor",
      ATTRNAME_ARCHIVE = "archive",
      ATTRNAME_ATTRIBUTE = "attribute",
      ATTRNAME_ATTRIBUTE_SET = "attribute-set",
      ATTRNAME_CASEORDER = "case-order",
      ATTRNAME_CLASS = "class",
      ATTRNAME_CLASSID = "classid",
      ATTRNAME_CODEBASE = "codebase",
      ATTRNAME_CODETYPE = "type",
      ATTRNAME_CONDITION = "condition",
      ATTRNAME_COPYTYPE = "copy-type",
      ATTRNAME_COUNT = "count",
      ATTRNAME_DATATYPE = "data-type",
      ATTRNAME_DECIMALSEPARATOR = "decimal-separator",
      ATTRNAME_DEFAULT = "default",
      ATTRNAME_DEFAULTSPACE = "default-space",
      ATTRNAME_DEPTH = "with-children",
      ATTRNAME_DIGIT = "digit",
      ATTRNAME_DIGITGROUPSEP = "digit-group-sep",
      ATTRNAME_DISABLE_OUTPUT_ESCAPING = "disable-output-escaping",
      ATTRNAME_ELEMENT = "element",
      ATTRNAME_ELEMENTS = "elements",
      ATTRNAME_EXCLUDE_RESULT_PREFIXES ="exclude-result-prefixes",
      ATTRNAME_EXPR = "expr",
      ATTRNAME_EXTENSIONELEMENTPREFIXES = "extension-element-prefixes",
      ATTRNAME_FORMAT = "format",
      ATTRNAME_FROM = "from",
      ATTRNAME_GROUPINGSEPARATOR = "grouping-separator",
      ATTRNAME_GROUPINGSIZE = "grouping-size",
      ATTRNAME_GROUPBY = "group-by",
      ATTRNAME_GROUP_ADJACENT = "group-adjacent",
      ATTRNAME_HREF = "href",
      ATTRNAME_ID = "id",
      ATTRNAME_IMPORTANCE = "importance",
      ATTRNAME_INDENTRESULT = "indent-result",
      ATTRNAME_INFINITY = "infinity",
      ATTRNAME_LANG = "lang",
      ATTRNAME_LETTERVALUE = "letter-value",
      ATTRNAME_LEVEL = "level",
      ATTRNAME_MATCH = "match",
      ATTRNAME_METHOD = "calls",
      ATTRNAME_MINUSSIGN = "minus-sign",
      ATTRNAME_MODE = "mode",    	          	      
      ATTRNAME_NAME = "name",
      ATTRNAME_NAMESPACE = "namespace",
      ATTRNAME_NAN = "NaN",
      ATTRNAME_NDIGITSPERGROUP = "n-digits-per-group",
      ATTRNAME_NS = "ns",
      ATTRNAME_ONLY = "only",
      ATTRNAME_ORDER = "order",
      ATTRNAME_OUTPUT_CDATA_SECTION_ELEMENTS = "cdata-section-elements",
      ATTRNAME_OUTPUT_DOCTYPE_PUBLIC = "doctype-public",
      ATTRNAME_OUTPUT_DOCTYPE_SYSTEM = "doctype-system",
      ATTRNAME_OUTPUT_ENCODING = "encoding",
      ATTRNAME_OUTPUT_INDENT = "indent",
      ATTRNAME_OUTPUT_MEDIATYPE = "media-type",
      ATTRNAME_OUTPUT_METHOD = "method",  // qname, 
      ATTRNAME_OUTPUT_OMITXMLDECL = "omit-xml-declaration",
      ATTRNAME_OUTPUT_STANDALONE = "standalone",
      ATTRNAME_OUTPUT_VERSION = "version",
      ATTRNAME_PATTERNSEPARATOR = "pattern-separator",
      ATTRNAME_PERCENT = "percent",
      ATTRNAME_PERMILLE = "per-mille",
      ATTRNAME_PRIORITY = "priority",
      ATTRNAME_REFID = "refID",
      ATTRNAME_RESULTNS = "result-ns",
      ATTRNAME_RESULT_PREFIX = "result-prefix",
      ATTRNAME_SELECT = "select",
      ATTRNAME_SEQUENCESRC = "sequence-src",
      ATTRNAME_STYLE = "style",
      ATTRNAME_STYLESHEET_PREFIX = "stylesheet-prefix",
      ATTRNAME_TERMINATE = "terminate",
      ATTRNAME_TEST = "test",
      ATTRNAME_TOSTRING = "to-string",
      ATTRNAME_TYPE = "type",
      ATTRNAME_USE = "use",
      ATTRNAME_USEATTRIBUTESETS = "use-attribute-sets",
      ATTRNAME_VALUE = "value",
      ATTRNAME_VERSION = "version",
      ATTRNAME_XMLNS = "xmlns:", // namespace declaration prefix -- NOT an attribute by itself
      ATTRNAME_XMLNSDEF = "xmlns", // default namespace
      ATTRNAME_XMLSPACE = "xml:space", 
      ATTRNAME_ZERODIGIT = "zero-digit",      
      ATTRNAME_USE_CHARACTER_MAPS = "use-character-maps",
      ATTRNAME_XPATH_DEFAULT_NAMESPACE = "xpath-default-namespace",
      ATTRNAME_EXPAND_TEXT = "expand-text",
      ATTRNAME_INPUT_TYPE_ANNOTATIONS = "input-type-annotations";

  /** IDs for XSL attribute types. These are associated
   * with the string literals in the TransformerImpl class.
   * Don't change the numbers. NOTE THAT THESE ARE NOT IN
   * ALPHABETICAL ORDER!
   */
  public static final int TATTRNAME_OUTPUT_METHOD = 1, TATTRNAME_AMOUNT = 2,
                          TATTRNAME_ANCESTOR = 3, TATTRNAME_ARCHIVE = 4,
                          TATTRNAME_ATTRIBUTE = 5,
                          TATTRNAME_ATTRIBUTE_SET = 6,
                          TATTRNAME_CASEORDER = 7, TATTRNAME_CLASS = 8,
                          TATTRNAME_CLASSID = 9, TATTRNAME_CODEBASE = 10,
                          TATTRNAME_CODETYPE = 11, TATTRNAME_CONDITION = 12,
                          TATTRNAME_COPYTYPE = 13, TATTRNAME_COUNT = 14,
                          TATTRNAME_DATATYPE = 15, TATTRNAME_DEFAULT = 16,
                          TATTRNAME_DEFAULTSPACE = 17, TATTRNAME_DEPTH = 18,
                          TATTRNAME_DIGITGROUPSEP = 19,
                          TATTRNAME_DISABLE_OUTPUT_ESCAPING = 20,
                          TATTRNAME_ELEMENT = 21, TATTRNAME_ELEMENTS = 22,
                          TATTRNAME_EXPR = 23,
                          TATTRNAME_EXTENSIONELEMENTPREFIXES = 24,
                          TATTRNAME_FORMAT = 25, TATTRNAME_FROM = 26,
                          TATTRNAME_GROUPINGSEPARATOR = 27,
                          TATTRNAME_GROUPINGSIZE = 28, TATTRNAME_HREF = 29,
                          TATTRNAME_ID = 30, TATTRNAME_IMPORTANCE = 31,
                          TATTRNAME_INDENTRESULT = 32, TATTRNAME_LANG = 33,
                          TATTRNAME_LETTERVALUE = 34, TATTRNAME_LEVEL = 35,
                          TATTRNAME_MATCH = 36, TATTRNAME_METHOD = 37,
                          TATTRNAME_MODE = 38, TATTRNAME_NAME = 39,
                          TATTRNAME_NAMESPACE = 40,
                          TATTRNAME_NDIGITSPERGROUP = 41, TATTRNAME_NS = 42,
                          TATTRNAME_ONLY = 43, TATTRNAME_ORDER = 44,
                          TATTRNAME_OUTPUT_CDATA_SECTION_ELEMENTS = 45,
                          TATTRNAME_OUTPUT_DOCTYPE_PUBLIC = 46,
                          TATTRNAME_OUTPUT_DOCTYPE_SYSTEM = 47,
                          TATTRNAME_OUTPUT_ENCODING = 48,
                          TATTRNAME_OUTPUT_INDENT = 49,
                          TATTRNAME_OUTPUT_MEDIATYPE = 50,
                          TATTRNAME_OUTPUT_STANDALONE = 51,
                          TATTRNAME_OUTPUT_VERSION = 52,
                          TATTRNAME_OUTPUT_OMITXMLDECL = 53,
                          TATTRNAME_PRIORITY = 54, TATTRNAME_REFID = 55,
                          TATTRNAME_RESULTNS = 56, TATTRNAME_SELECT = 57,
                          TATTRNAME_SEQUENCESRC = 58, TATTRNAME_STYLE = 59,
                          TATTRNAME_TEST = 60, TATTRNAME_TOSTRING = 61,
                          TATTRNAME_TYPE = 62, TATTRNAME_USE = 63,
                          TATTRNAME_USEATTRIBUTESETS = 64,
                          TATTRNAME_VALUE = 65, TATTRNAME_XMLNSDEF = 66,
                          TATTRNAME_XMLNS = 67, TATTRNAME_XMLSPACE = 68,
                          TATTRNAME_EXCLUDE_RESULT_PREFIXES = 69;

  /** Mnemonics for the possible values of the xsl:output element's
   * method= attribute:
   * <ul>
   * <li>ATTRVAL_OUTPUT_METHOD_XML: Use an XML formatter to
   * produce the output document (basic XSLT operation).</li>
   * <li>ATTRVAL_OUTPUT_METHOD_HTML: Use an HTML formatter to
   * produce the output document. When generating HTML documents,
   * this may yield better results; it does things like escaping
   * characters in href attributes.</li>
   * <li>ATTRVAL_OUTPUT_METHOD_TEXT: Use a Text formatter to
   * produce the output document. Generally the right choice if your
   * stylesheet wants to take over _all_ the details of formatting,
   * most often when producing something that isn't an XML or HTML
   * document.</li>
   * <li>ATTRVAL_OUTPUT_METHOD_JSON: Use a JSON text formatter to
   * produce the output document. Added for XSLT 3.0 spec 
   * implementation.</li>
   * </ul> 
   * */
  public static final String ATTRVAL_OUTPUT_METHOD_HTML = "html",
                             ATTRVAL_OUTPUT_METHOD_XML = "xml",
                             ATTRVAL_OUTPUT_METHOD_TEXT = "text",
                             ATTRVAL_OUTPUT_METHOD_JSON = "json";

  
  /* For space-att*/
  public static final int ATTRVAL_PRESERVE = 1, ATTRVAL_STRIP = 2;

  
  /** For indent-result          */
  public static final boolean ATTRVAL_YES = true, ATTRVAL_NO = false;

  
  /** For letter-value attribute (part of conversion attributes).          */
  public static final String ATTRVAL_ALPHABETIC = "alphabetic",
                             ATTRVAL_OTHER = "other",
                             ATTRVAL_TRADITIONAL = "traditional";

  
  /** For level attribute in xsl:number.          */
  public static final String ATTRVAL_SINGLE = "single",
                             ATTRVAL_MULTI = "multiple", ATTRVAL_ANY = "any";

  
  /** For Stylesheet-prefix and result-prefix in xsl:namespace-alias          */
  public static final String ATTRVAL_DEFAULT_PREFIX = "#default";
  
  public static final String ATTRVAL_UNNAMED_PREFIX = "#unnamed";
  
  public static final String ATTRVAL_CURRENT_PREFIX = "#current";
  
  public static final String ATTRVAL_ALL_PREFIX = "#all";

 /** Integer equivalents for above        */
  public static final int NUMBERLETTER_ALPHABETIC = 1, NUMBERLETTER_TRADITIONAL = 2;
  
  /** Integer equivelents for above        */
  public static final int NUMBERLEVEL_SINGLE = 1, NUMBERLEVEL_MULTI = 2,
                          NUMBERLEVEL_ANY = 3, MAX_MULTI_COUNTING_DEPTH = 32;

  
  /** some stuff for my patterns-by-example         */
  public static final String ATTRVAL_THIS = ".", ATTRVAL_PARENT = "..",
                             ATTRVAL_ANCESTOR = "ancestor", ATTRVAL_ID = "id";

  
  /** Stuff for sorting      */
  public static final String ATTRVAL_DATATYPE_TEXT = "text",
                             ATTRVAL_DATATYPE_NUMBER = "number",
                             ATTRVAL_ORDER_ASCENDING = "ascending",
                             ATTRVAL_ORDER_DESCENDING = "descending",
                             ATTRVAL_CASEORDER_UPPER = "upper-first",
                             ATTRVAL_CASEORDER_LOWER = "lower-first";

 /** Integer equivelents for DATATYPE attribute */
  public static final int SORTDATATYPE_TEXT = 1, SORTDATATYPE_NUMBER = 2;

  /** Integer equivelents for ORDER attribute */
  public static final int SORTORDER_ASCENDING = 1, SORTORDER_DESCENDING = 2;
  
  /** Integer equivelents for CASE-ORDER attribute */
  public static final int SORTCASEORDER_UPPERFIRST = 1, SORTCASEORDER_LOWERFIRST = 2;
  
  /** some stuff for Decimal-format       */
  public static final String ATTRVAL_INFINITY = "Infinity",
                             ATTRVAL_NAN = "NaN",
                             DEFAULT_DECIMAL_FORMAT = "#default";

  public static final String XSL_PATTERN_TABLE_DELIM = "#####";
  
  public static final String XSL_INITIAL_TEMPLATE_DEFAULT_NAME = "xsl:initial-template";
  
  /** XSLT 3.0 xsl:try and xsl:catch instruction's processing constants */
  
  public static final String XSL_ERROR_NAMESACE = "http://www.w3.org/2005/xqt-errors";
  public static final String XSL_ERROR_CODE = "code";
  public static final String XSL_ERROR_MODULE = "module";
  public static final String XSL_ERROR_DESCRIPTION = "description";
  public static final String XSL_ERROR_LINE_NUMBER = "line-number";
  public static final String XSL_ERROR_COLUMN_NUMBER = "column-number";
  public static final String XSL_ERROR_VALUE = "value";
  
  public static final String ANONYMOUS_FUNCTION = "anonymous_func";
  
  public static final String ATTRVAL_TEXT_ONLY_COPY = "text-only-copy".intern(); 
  public static final String ATTRVAL_DEEP_COPY = "deep-copy".intern();
  public static final String ATTRVAL_SHALLOW_COPY = "shallow-copy".intern();
  public static final String ATTRVAL_DEEP_SKIP = "deep-skip".intern();
  public static final String ATTRVAL_SHALLOW_SKIP = "shallow-skip".intern();
  public static final String ATTRVAL_FAIL = "fail".intern();
  public static final String ATTRVAL_USE_LAST = "use-last".intern();
  
  // This is Xalan-J XSLT 3.0 string constant internal value, for an 
  // implementation of XPath 3.1 function fn:random-number-generator.
  public static final String FN_XALAN_RNG_PERMUTE = "'FnXalanPermute'";
  
  public static final String FN_XALAN_RNG_NEXT = "next";
  
  public static final String FN_XALAN_RNG_PERMUTE_STR = "permute";
  
  // This is used for Xalan-J XSLT 3.0 instruction xsl:document's implementation
  public static final String XSL_DOCUMENT_INSTRUCTION_MARKER = "###xslDocument###";
  
  public static final String UNARY_LOOKUP_MAP_ARRAY = "unary_lookup_map_array";
  
  public static final String ATTRVAL_PUBLIC = "public";
  
  public static final String ATTRVAL_PRIVATE = "private";
  
  public static final String ATTRVAL_FINAL = "final";
  
  public static final String ATTRVAL_ABSTRACT = "abstract";
  
  public static final String ATTRVAL_REQUIRED = "required";
  
  public static final String ATTRVAL_OPTIONAL = "optional";
  
  public static final String ATTRVAL_ABSENT = "absent";
  
}
