org.apache.xalan.xsltc.runtime

## Class BasisLibrary

- java.lang.Object
- - org.apache.xalan.xsltc.runtime.BasisLibrary

-     public final class BasisLibrary
      extends java.lang.Object

  Standard XSLT functions. All standard functions expect the current node and the DOM as their last two arguments.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `AXIS_SUPPORT_ERR`
    `static java.lang.String` | `CANT_RESOLVE_RELATIVE_URI_ERR`
    `static java.lang.String` | `DATA_CONVERSION_ERR`
    `static java.lang.String` | `DOM_ADAPTER_INIT_ERR`
    `static java.lang.String` | `EQUALITY_EXPR_ERR`
    `static java.lang.String` | `ERROR_MESSAGES_KEY`
    `static java.lang.String` | `EXTERNAL_FUNC_ERR`
    `static java.lang.String` | `FORMAT_NUMBER_ERR`
    `static java.lang.String` | `INVALID_ARGUMENT_ERR`
    `static java.lang.String` | `INVALID_NCNAME_ERR`
    `static java.lang.String` | `INVALID_QNAME_ERR`
    `static java.lang.String` | `ITERATOR_CLONE_ERR`
    `static java.lang.String` | `NAMESPACE_PREFIX_ERR`
    `static java.lang.String` | `NAMESPACES_SUPPORT_ERR`
    `static java.lang.String` | `PARSER_DTD_SUPPORT_ERR`
    `static java.lang.String` | `RUN_TIME_COPY_ERR`
    `static java.lang.String` | `RUN_TIME_INTERNAL_ERR`
    `static java.lang.String` | `STRAY_ATTRIBUTE_ERR`
    `static java.lang.String` | `STRAY_NAMESPACE_ERR`
    `static java.lang.String` | `TYPED_AXIS_SUPPORT_ERR`
    `static java.lang.String` | `UNALLOWED_EXTENSION_ELEMENT_ERR`
    `static java.lang.String` | `UNALLOWED_EXTENSION_FUNCTION_ERR`
    `static java.lang.String` | `UNKNOWN_TRANSLET_VERSION_ERR`
    `static java.lang.String` | `UNSUPPORTED_EXT_ERR`
    `static java.lang.String` | `UNSUPPORTED_XSL_ERR`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BasisLibrary()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `booleanF(java.lang.Object obj)` XSLT Standard function boolean()
    `static void` | `checkAttribQName(java.lang.String name)` Utility function to check if xsl:attribute has a valid qname This method should only be invoked if the name attribute is an AVT
    `static void` | `checkNCName(java.lang.String name)` Utility function to check if a name is a valid ncname This method should only be invoked if the attribute value is an AVT
    `static void` | `checkQName(java.lang.String name)` Utility function to check if a name is a valid qname This method should only be invoked if the attribute value is an AVT
    `static boolean` | `compare(DTMAxisIterator left, double rnumber, int op, DOM dom)` Utility function: node-set/number compare.
    `static boolean` | `compare(DTMAxisIterator left, DTMAxisIterator right, int op, DOM dom)` Utility function: node-set/node-set compare.
    `static boolean` | `compare(DTMAxisIterator left, java.lang.String rstring, int op, DOM dom)` Utility function: node-set/string comparison.
    `static boolean` | `compare(int node, DTMAxisIterator iterator, int op, DOM dom)`
    `static boolean` | `compare(java.lang.Object left, java.lang.Object right, int op, DOM dom)`
    `static void` | `consoleOutput(java.lang.String msg)`
    `static void` | `copy(java.lang.Object obj, SerializationHandler handler, int node, DOM dom)`
    `static int` | `countF(DTMAxisIterator iterator)` Standard function count(node-set)
    `static java.lang.String` | `expandStylesheetQNameRef(java.lang.String lexicalQName, int stylesheetNodeID, int[] ancestorNodeIDs, int[] prefixURIsIndex, java.lang.String[] prefixURIPairs, boolean ignoreDefault)` Look up the namespace for a lexical QName using the namespace declarations available at a particular location in the stylesheet and return the expanded QName See `Stylesheet.compileStaticInitializer(org.apache.xalan.xsltc.compiler.util.ClassGenerator)` for more information about the `ancestorNodeIDs`, `prefixURIsIndex` and `prefixURIPairs`
    `static java.lang.String` | `formatNumber(double number, java.lang.String pattern, java.text.DecimalFormat formatter)`
    `static java.lang.String` | `generate_idF(int node)` XSLT Standard function generate-id().
    `static java.lang.String` | `generatePrefix()`
    `static java.lang.String` | `getLocalName(java.lang.String value)` utility function for calls to local-name().
    `static java.lang.String` | `getPrefix(java.lang.String qname)` This function is used in the execution of xsl:element
    `static DTMAxisIterator` | `getSingleNode(DTMAxisIterator iterator)` Utility function: used with nth position filters to convert a sequence of nodes to just one single node (the one at position n).
    `static java.lang.String` | `lookupStylesheetQNameNamespace(java.lang.String lexicalQName, int stylesheetNodeID, int[] ancestorNodeIDs, int[] prefixURIsIndex, java.lang.String[] prefixURIPairs, boolean ignoreDefault)` Look up the namespace for a lexical QName using the namespace declarations available at a particular location in the stylesheet.
    `static java.lang.String` | `mapQNameToJavaName(java.lang.String base)` Utility method to allow setting parameters of the form {namespaceuri}localName which get mapped to an instance variable in the class Hence a parameter of the form "{http://foo.bar}xyz" will be replaced with the corresponding values by the BasisLibrary's utility method mapQNametoJavaName and thus get mapped to legal java variable names
    `static java.lang.String` | `namespace_uriF(DTMAxisIterator iter, DOM dom)` XSLT Standard function namespace-uri(node-set).
    `static java.lang.String` | `namespace_uriF(int node, DOM dom)` XSLT Standard function namespace-uri().
    `static DTMAxisIterator` | `node2Iterator(org.w3c.dom.Node node, Translet translet, DOM dom)` Utility function used to convert a w3c Node into an internal DOM iterator.
    `static DTMAxisIterator` | `nodeList2Iterator(org.w3c.dom.NodeList nodeList, Translet translet, DOM dom)` Utility function used to convert a w3c NodeList into a internal DOM iterator.
    `static DTMAxisIterator` | `nodesetF(java.lang.Object obj)` Implements the nodeset() extension function.
    `static java.lang.String` | `normalize_spaceF(int node, DOM dom)` XSLT Standard function normalize-space().
    `static java.lang.String` | `normalize_spaceF(java.lang.String value)` XSLT Standard function normalize-space(string).
    `static double` | `numberF(int node, DOM dom)` XSLT Standard function number()
    `static double` | `numberF(java.lang.Object obj, DOM dom)` XSLT Standard function number(value)
    `static java.lang.String` | `objectTypeF(java.lang.Object obj)` Implements the object-type() extension function.
    `static int` | `positionF(DTMAxisIterator iterator)` Deprecated. This method exists only for backwards compatibility with old translets. New code should not reference it.
    `static int` | `realToInt(double d)` Utility function: used in RealType to convert a real to an integer
    `static java.lang.String` | `realToString(double d)` Utility function: used in RealType to convert a real to a string.
    `static boolean` | `referenceToBoolean(java.lang.Object obj)` Utility function: used to convert reference to boolean.
    `static double` | `referenceToDouble(java.lang.Object obj)` Utility function: used to convert reference to double.
    `static long` | `referenceToLong(java.lang.Object obj)` Utility function: used to convert reference to long.
    `static org.w3c.dom.Node` | `referenceToNode(java.lang.Object obj, DOM dom)` Utility function: used to convert reference to org.w3c.dom.Node.
    `static org.w3c.dom.NodeList` | `referenceToNodeList(java.lang.Object obj, DOM dom)` Utility function: used to convert reference to org.w3c.dom.NodeList.
    `static DTMAxisIterator` | `referenceToNodeSet(java.lang.Object obj)` Utility function: used to convert references to node-sets.
    `static DOM` | `referenceToResultTree(java.lang.Object obj)` Utility function used to convert references to DOMs.
    `static java.lang.String` | `referenceToString(java.lang.Object obj, DOM dom)` Utility function: used to convert reference to String.
    `static java.lang.String` | `replace(java.lang.String base, char ch, java.lang.String str)` Replace a certain character in a string with a new substring.
    `static java.lang.String` | `replace(java.lang.String base, java.lang.String delim, java.lang.String[] str)`
    `static double` | `roundF(double d)` XSLT Standard function round()
    `static void` | `runTimeError(java.lang.String code)` Print a run-time error message.
    `static void` | `runTimeError(java.lang.String code, java.lang.Object arg0)`
    `static void` | `runTimeError(java.lang.String code, java.lang.Object[] args)`
    `static void` | `runTimeError(java.lang.String code, java.lang.Object arg0, java.lang.Object arg1)`
    `static java.lang.String` | `startXslElement(java.lang.String qname, java.lang.String namespace, SerializationHandler handler, DOM dom, int node)` Utility function for the implementation of xsl:element.
    `static java.lang.String` | `stringF(int node, DOM dom)` XSLT Standard function string()
    `static java.lang.String` | `stringF(java.lang.Object obj, DOM dom)` XSLT Standard function string(value)
    `static java.lang.String` | `stringF(java.lang.Object obj, int node, DOM dom)` XSLT Standard function string(value)
    `static int` | `stringToInt(java.lang.String s)` Utility function: used in StringType to convert a string to an int.
    `static double` | `stringToReal(java.lang.String s)` Utility function: used in StringType to convert a string to a real.
    `static java.lang.String` | `substring_afterF(java.lang.String value, java.lang.String substring)` XSLT Standard function substring-after().
    `static java.lang.String` | `substring_beforeF(java.lang.String value, java.lang.String substring)` XSLT Standard function substring-before().
    `static java.lang.String` | `substringF(java.lang.String value, double start)` XSLT Standard function substring().
    `static java.lang.String` | `substringF(java.lang.String value, double start, double length)` XSLT Standard function substring().
    `static double` | `sumF(DTMAxisIterator iterator, DOM dom)` XSLT Standard function sum(node-set).
    `static java.lang.String` | `system_propertyF(java.lang.String name)` XSLT Standard function system-property(name)
    `static boolean` | `testLanguage(java.lang.String testLang, DOM dom, int node)` Utility function: used to test context node's language
    `static java.lang.String` | `translateF(java.lang.String value, java.lang.String from, java.lang.String to)` XSLT Standard function translate().
    `static void` | `unallowed_extension_elementF(java.lang.String name)` Utility function to throw a runtime error on the use of an extension element when the secure processing feature is set to true.
    `static void` | `unallowed_extension_functionF(java.lang.String name)` Utility function to throw a runtime error on the use of an extension function when the secure processing feature is set to true.
    `static void` | `unresolved_externalF(java.lang.String name)` External functions that cannot be resolved are replaced with a call to this method.
    `static void` | `unsupported_ElementF(java.lang.String qname, boolean isExtension)` Utility function to throw a runtime error for an unsupported element.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### RUN_TIME_INTERNAL_ERR

          public static final java.lang.String RUN_TIME_INTERNAL_ERR

      See Also:
        Constant Field Values

    - #### RUN_TIME_COPY_ERR

          public static final java.lang.String RUN_TIME_COPY_ERR

      See Also:
        Constant Field Values

    - #### DATA_CONVERSION_ERR

          public static final java.lang.String DATA_CONVERSION_ERR

      See Also:
        Constant Field Values

    - #### EXTERNAL_FUNC_ERR

          public static final java.lang.String EXTERNAL_FUNC_ERR

      See Also:
        Constant Field Values

    - #### EQUALITY_EXPR_ERR

          public static final java.lang.String EQUALITY_EXPR_ERR

      See Also:
        Constant Field Values

    - #### INVALID_ARGUMENT_ERR

          public static final java.lang.String INVALID_ARGUMENT_ERR

      See Also:
        Constant Field Values

    - #### FORMAT_NUMBER_ERR

          public static final java.lang.String FORMAT_NUMBER_ERR

      See Also:
        Constant Field Values

    - #### ITERATOR_CLONE_ERR

          public static final java.lang.String ITERATOR_CLONE_ERR

      See Also:
        Constant Field Values

    - #### AXIS_SUPPORT_ERR

          public static final java.lang.String AXIS_SUPPORT_ERR

      See Also:
        Constant Field Values

    - #### TYPED_AXIS_SUPPORT_ERR

          public static final java.lang.String TYPED_AXIS_SUPPORT_ERR

      See Also:
        Constant Field Values

    - #### STRAY_ATTRIBUTE_ERR

          public static final java.lang.String STRAY_ATTRIBUTE_ERR

      See Also:
        Constant Field Values

    - #### STRAY_NAMESPACE_ERR

          public static final java.lang.String STRAY_NAMESPACE_ERR

      See Also:
        Constant Field Values

    - #### NAMESPACE_PREFIX_ERR

          public static final java.lang.String NAMESPACE_PREFIX_ERR

      See Also:
        Constant Field Values

    - #### DOM_ADAPTER_INIT_ERR

          public static final java.lang.String DOM_ADAPTER_INIT_ERR

      See Also:
        Constant Field Values

    - #### PARSER_DTD_SUPPORT_ERR

          public static final java.lang.String PARSER_DTD_SUPPORT_ERR

      See Also:
        Constant Field Values

    - #### NAMESPACES_SUPPORT_ERR

          public static final java.lang.String NAMESPACES_SUPPORT_ERR

      See Also:
        Constant Field Values

    - #### CANT_RESOLVE_RELATIVE_URI_ERR

          public static final java.lang.String CANT_RESOLVE_RELATIVE_URI_ERR

      See Also:
        Constant Field Values

    - #### UNSUPPORTED_XSL_ERR

          public static final java.lang.String UNSUPPORTED_XSL_ERR

      See Also:
        Constant Field Values

    - #### UNSUPPORTED_EXT_ERR

          public static final java.lang.String UNSUPPORTED_EXT_ERR

      See Also:
        Constant Field Values

    - #### UNKNOWN_TRANSLET_VERSION_ERR

          public static final java.lang.String UNKNOWN_TRANSLET_VERSION_ERR

      See Also:
        Constant Field Values

    - #### INVALID_QNAME_ERR

          public static final java.lang.String INVALID_QNAME_ERR

      See Also:
        Constant Field Values

    - #### INVALID_NCNAME_ERR

          public static final java.lang.String INVALID_NCNAME_ERR

      See Also:
        Constant Field Values

    - #### UNALLOWED_EXTENSION_FUNCTION_ERR

          public static final java.lang.String UNALLOWED_EXTENSION_FUNCTION_ERR

      See Also:
        Constant Field Values

    - #### UNALLOWED_EXTENSION_ELEMENT_ERR

          public static final java.lang.String UNALLOWED_EXTENSION_ELEMENT_ERR

      See Also:
        Constant Field Values

    - #### ERROR_MESSAGES_KEY

          public static final java.lang.String ERROR_MESSAGES_KEY

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### BasisLibrary

          public BasisLibrary()

  - ### Method Detail

    - #### countF

          public static int countF(DTMAxisIterator iterator)

      Standard function count(node-set)

    - #### positionF

          public static int positionF(DTMAxisIterator iterator)

      Deprecated. This method exists only for backwards compatibility with old translets. New code should not reference it.
      Standard function position()

    - #### sumF

          public static double sumF(DTMAxisIterator iterator,
                                    DOM dom)

      XSLT Standard function sum(node-set). stringToDouble is inlined

    - #### stringF

          public static java.lang.String stringF(int node,
                                                 DOM dom)

      XSLT Standard function string()

    - #### stringF

          public static java.lang.String stringF(java.lang.Object obj,
                                                 DOM dom)

      XSLT Standard function string(value)

    - #### stringF

          public static java.lang.String stringF(java.lang.Object obj,
                                                 int node,
                                                 DOM dom)

      XSLT Standard function string(value)

    - #### numberF

          public static double numberF(int node,
                                       DOM dom)

      XSLT Standard function number()

    - #### numberF

          public static double numberF(java.lang.Object obj,
                                       DOM dom)

      XSLT Standard function number(value)

    - #### roundF

          public static double roundF(double d)

      XSLT Standard function round()

    - #### booleanF

          public static boolean booleanF(java.lang.Object obj)

      XSLT Standard function boolean()

    - #### substringF

          public static java.lang.String substringF(java.lang.String value,
                                                    double start)

      XSLT Standard function substring(). Must take a double because of conversions resulting into NaNs and rounding.

    - #### substringF

          public static java.lang.String substringF(java.lang.String value,
                                                    double start,
                                                    double length)

      XSLT Standard function substring(). Must take a double because of conversions resulting into NaNs and rounding.

    - #### substring_afterF

          public static java.lang.String substring_afterF(java.lang.String value,
                                                          java.lang.String substring)

      XSLT Standard function substring-after().

    - #### substring_beforeF

          public static java.lang.String substring_beforeF(java.lang.String value,
                                                           java.lang.String substring)

      XSLT Standard function substring-before().

    - #### translateF

          public static java.lang.String translateF(java.lang.String value,
                                                    java.lang.String from,
                                                    java.lang.String to)

      XSLT Standard function translate().

    - #### normalize_spaceF

          public static java.lang.String normalize_spaceF(int node,
                                                          DOM dom)

      XSLT Standard function normalize-space().

    - #### normalize_spaceF

          public static java.lang.String normalize_spaceF(java.lang.String value)

      XSLT Standard function normalize-space(string).

    - #### generate_idF

          public static java.lang.String generate_idF(int node)

      XSLT Standard function generate-id().

    - #### getLocalName

          public static java.lang.String getLocalName(java.lang.String value)

      utility function for calls to local-name().

    - #### unresolved_externalF

          public static void unresolved_externalF(java.lang.String name)

      External functions that cannot be resolved are replaced with a call to this method. This method will generate a runtime errors. A good stylesheet checks whether the function exists using conditional constructs, and never really tries to call it if it doesn't exist. But simple stylesheets may result in a call to this method. The compiler should generate a warning if it encounters a call to an unresolved external function.

    - #### unallowed_extension_functionF

          public static void unallowed_extension_functionF(java.lang.String name)

      Utility function to throw a runtime error on the use of an extension function when the secure processing feature is set to true.

    - #### unallowed_extension_elementF

          public static void unallowed_extension_elementF(java.lang.String name)

      Utility function to throw a runtime error on the use of an extension element when the secure processing feature is set to true.

    - #### unsupported_ElementF

          public static void unsupported_ElementF(java.lang.String qname,
                                                  boolean isExtension)

      Utility function to throw a runtime error for an unsupported element. This is only used in forward-compatibility mode, when the control flow cannot be determined. In 1.0 mode, the error message is emitted at compile time.

    - #### namespace_uriF

          public static java.lang.String namespace_uriF(DTMAxisIterator iter,
                                                        DOM dom)

      XSLT Standard function namespace-uri(node-set).

    - #### system_propertyF

          public static java.lang.String system_propertyF(java.lang.String name)

      XSLT Standard function system-property(name)

    - #### namespace_uriF

          public static java.lang.String namespace_uriF(int node,
                                                        DOM dom)

      XSLT Standard function namespace-uri().

    - #### objectTypeF

          public static java.lang.String objectTypeF(java.lang.Object obj)

      Implements the object-type() extension function.
      See Also:
        EXSLT

    - #### nodesetF

          public static DTMAxisIterator nodesetF(java.lang.Object obj)

      Implements the nodeset() extension function.

    - #### compare

          public static boolean compare(DTMAxisIterator left,
                                        DTMAxisIterator right,
                                        int op,
                                        DOM dom)

      Utility function: node-set/node-set compare.

    - #### compare

          public static boolean compare(int node,
                                        DTMAxisIterator iterator,
                                        int op,
                                        DOM dom)

    - #### compare

          public static boolean compare(DTMAxisIterator left,
                                        double rnumber,
                                        int op,
                                        DOM dom)

      Utility function: node-set/number compare.

    - #### compare

          public static boolean compare(DTMAxisIterator left,
                                        java.lang.String rstring,
                                        int op,
                                        DOM dom)

      Utility function: node-set/string comparison.

    - #### compare

          public static boolean compare(java.lang.Object left,
                                        java.lang.Object right,
                                        int op,
                                        DOM dom)

    - #### testLanguage

          public static boolean testLanguage(java.lang.String testLang,
                                             DOM dom,
                                             int node)

      Utility function: used to test context node's language

    - #### stringToReal

          public static double stringToReal(java.lang.String s)

      Utility function: used in StringType to convert a string to a real.

    - #### stringToInt

          public static int stringToInt(java.lang.String s)

      Utility function: used in StringType to convert a string to an int.

    - #### realToString

          public static java.lang.String realToString(double d)

      Utility function: used in RealType to convert a real to a string. Removes the decimal if null.

    - #### realToInt

          public static int realToInt(double d)

      Utility function: used in RealType to convert a real to an integer

    - #### formatNumber

          public static java.lang.String formatNumber(double number,
                                                      java.lang.String pattern,
                                                      java.text.DecimalFormat formatter)

    - #### referenceToNodeSet

          public static DTMAxisIterator referenceToNodeSet(java.lang.Object obj)

      Utility function: used to convert references to node-sets. If the obj is an instanceof Node then create a singleton iterator.

    - #### referenceToNodeList

          public static org.w3c.dom.NodeList referenceToNodeList(java.lang.Object obj,
                                                                 DOM dom)

      Utility function: used to convert reference to org.w3c.dom.NodeList.

    - #### referenceToNode

          public static org.w3c.dom.Node referenceToNode(java.lang.Object obj,
                                                         DOM dom)

      Utility function: used to convert reference to org.w3c.dom.Node.

    - #### referenceToLong

          public static long referenceToLong(java.lang.Object obj)

      Utility function: used to convert reference to long.

    - #### referenceToDouble

          public static double referenceToDouble(java.lang.Object obj)

      Utility function: used to convert reference to double.

    - #### referenceToBoolean

          public static boolean referenceToBoolean(java.lang.Object obj)

      Utility function: used to convert reference to boolean.

    - #### referenceToString

          public static java.lang.String referenceToString(java.lang.Object obj,
                                                           DOM dom)

      Utility function: used to convert reference to String.

    - #### node2Iterator

          public static DTMAxisIterator node2Iterator(org.w3c.dom.Node node,
                                                      Translet translet,
                                                      DOM dom)

      Utility function used to convert a w3c Node into an internal DOM iterator.

    - #### nodeList2Iterator

          public static DTMAxisIterator nodeList2Iterator(org.w3c.dom.NodeList nodeList,
                                                          Translet translet,
                                                          DOM dom)

      Utility function used to convert a w3c NodeList into a internal DOM iterator.

    - #### referenceToResultTree

          public static DOM referenceToResultTree(java.lang.Object obj)

      Utility function used to convert references to DOMs.

    - #### getSingleNode

          public static DTMAxisIterator getSingleNode(DTMAxisIterator iterator)

      Utility function: used with nth position filters to convert a sequence of nodes to just one single node (the one at position n).

    - #### copy

          public static void copy(java.lang.Object obj,
                                  SerializationHandler handler,
                                  int node,
                                  DOM dom)

    - #### checkAttribQName

          public static void checkAttribQName(java.lang.String name)

      Utility function to check if xsl:attribute has a valid qname This method should only be invoked if the name attribute is an AVT

    - #### checkNCName

          public static void checkNCName(java.lang.String name)

      Utility function to check if a name is a valid ncname This method should only be invoked if the attribute value is an AVT

    - #### checkQName

          public static void checkQName(java.lang.String name)

      Utility function to check if a name is a valid qname This method should only be invoked if the attribute value is an AVT

    - #### startXslElement

          public static java.lang.String startXslElement(java.lang.String qname,
                                                         java.lang.String namespace,
                                                         SerializationHandler handler,
                                                         DOM dom,
                                                         int node)

      Utility function for the implementation of xsl:element.

    - #### lookupStylesheetQNameNamespace

          public static java.lang.String lookupStylesheetQNameNamespace(java.lang.String lexicalQName,
                                                                        int stylesheetNodeID,
                                                                        int[] ancestorNodeIDs,
                                                                        int[] prefixURIsIndex,
                                                                        java.lang.String[] prefixURIPairs,
                                                                        boolean ignoreDefault)

      Look up the namespace for a lexical QName using the namespace declarations available at a particular location in the stylesheet.

      See `Stylesheet.compileStaticInitializer(org.apache.xalan.xsltc.compiler.util.ClassGenerator)` for more information about the `ancestorNodeIDs`, `prefixURIsIndex` and `prefixURIPairs`

      Parameters:
        `lexicalQName` - The QName as a `java.lang.String`
        `stylesheetNodeID` - An `int` representing the element in the stylesheet relative to which the namespace of the lexical QName is to be determined
        `ancestorNodeIDs` - An `int` array, indexed by stylesheet node IDs, containing the ID of the nearest ancestor node in the stylesheet that has namespace declarations, or `-1` if there is no such ancestor
        `prefixURIsIndex` - An `int` array, indexed by stylesheet node IDs, containing the index into the `prefixURIPairs` array of the first prefix declared on that stylesheet node
        `prefixURIPairs` - A `java.lang.String` array that contains pairs of
        `ignoreDefault` - A `boolean` indicating whether any default namespace decarlation should be considered
      Returns:
        The namespace of the lexical QName or a zero-length string if the QName is in no namespace or no namespace declaration for the prefix of the QName was found

    - #### expandStylesheetQNameRef

          public static java.lang.String expandStylesheetQNameRef(java.lang.String lexicalQName,
                                                                  int stylesheetNodeID,
                                                                  int[] ancestorNodeIDs,
                                                                  int[] prefixURIsIndex,
                                                                  java.lang.String[] prefixURIPairs,
                                                                  boolean ignoreDefault)

      Look up the namespace for a lexical QName using the namespace declarations available at a particular location in the stylesheet and return the expanded QName

      See `Stylesheet.compileStaticInitializer(org.apache.xalan.xsltc.compiler.util.ClassGenerator)` for more information about the `ancestorNodeIDs`, `prefixURIsIndex` and `prefixURIPairs`

      Parameters:
        `lexicalQName` - The QName as a `java.lang.String`
        `stylesheetNodeID` - An `int` representing the element in the stylesheet relative to which the namespace of the lexical QName is to be determined
        `ancestorNodeIDs` - An `int` array, indexed by stylesheet node IDs, containing the ID of the nearest ancestor node in the stylesheet that has namespace declarations, or `-1` if there is no such ancestor
        `prefixURIsIndex` - An `int` array, indexed by stylesheet node IDs, containing the index into the `prefixURIPairs` array of the first prefix declared on that stylesheet node
        `prefixURIPairs` - A `java.lang.String` array that contains pairs of
        `ignoreDefault` - A `boolean` indicating whether any default namespace decarlation should be considered
      Returns:
        The expanded QName in the form "uri:localName" or just "localName" if the QName is in no namespace or no namespace declaration for the prefix of the QName was found

    - #### getPrefix

          public static java.lang.String getPrefix(java.lang.String qname)

      This function is used in the execution of xsl:element

    - #### generatePrefix

          public static java.lang.String generatePrefix()

    - #### runTimeError

          public static void runTimeError(java.lang.String code)

      Print a run-time error message.

    - #### runTimeError

          public static void runTimeError(java.lang.String code,
                                          java.lang.Object[] args)

    - #### runTimeError

          public static void runTimeError(java.lang.String code,
                                          java.lang.Object arg0)

    - #### runTimeError

          public static void runTimeError(java.lang.String code,
                                          java.lang.Object arg0,
                                          java.lang.Object arg1)

    - #### consoleOutput

          public static void consoleOutput(java.lang.String msg)

    - #### replace

          public static java.lang.String replace(java.lang.String base,
                                                 char ch,
                                                 java.lang.String str)

      Replace a certain character in a string with a new substring.

    - #### replace

          public static java.lang.String replace(java.lang.String base,
                                                 java.lang.String delim,
                                                 java.lang.String[] str)

    - #### mapQNameToJavaName

          public static java.lang.String mapQNameToJavaName(java.lang.String base)

      Utility method to allow setting parameters of the form {namespaceuri}localName which get mapped to an instance variable in the class Hence a parameter of the form "{http://foo.bar}xyz" will be replaced with the corresponding values by the BasisLibrary's utility method mapQNametoJavaName and thus get mapped to legal java variable names

Copyright © 2023 Apache XML Project. All Rights Reserved.