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
`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

Methods
`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(Node node, Translet translet, DOM dom)` Utility function used to convert a w3c Node into an internal DOM iterator.
`static DTMAxisIterator` `nodeList2Iterator(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 Node` `referenceToNode(java.lang.Object obj, DOM dom)` Utility function: used to convert reference to org.w3c.dom.Node.
`static 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 NodeList referenceToNodeList(java.lang.Object obj,
                               DOM dom)

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

#### referenceToNode

    public static 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(Node node,
                                Translet translet,
                                DOM dom)

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

#### nodeList2Iterator

    public static DTMAxisIterator nodeList2Iterator(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