## net.sf.saxon.style
Class SaxonImportQuery

    java.lang.Object
      net.sf.saxon.tree.NodeImpl
          net.sf.saxon.tree.ElementImpl
              net.sf.saxon.tree.ElementWithAttributes
                  net.sf.saxon.style.StyleElement
                      net.sf.saxon.style.SaxonImportQuery

All Implemented Interfaces:
  Source, SourceLocator, LocationProvider, SaxonLocator, Container, FingerprintedNode, Item, NodeInfo, ValueRepresentation, InstructionInfo, Locator

    public class SaxonImportQuery

extends StyleElement

The class implements a saxon:import-query declaration in a stylesheet. This declaration imports an XQuery library module and adds the functions defined in that module to the static context, making them available for calling from XPath expressions in the stylesheet.

Field Summary

Fields inherited from class net.sf.saxon.style.StyleElement
`REPORT_ALWAYS, REPORT_IF_INSTANTIATED, REPORT_UNLESS_FALLBACK_AVAILABLE, REPORT_UNLESS_FORWARDS_COMPATIBLE`

Fields inherited from class net.sf.saxon.tree.NodeImpl
`NODE_LETTER`

Fields inherited from interface net.sf.saxon.om.NodeInfo
`ALL_NAMESPACES, EMPTY_NAMESPACE_LIST, IS_DTD_TYPE, IS_NILLED, LOCAL_NAMESPACES, NO_NAMESPACES`

Fields inherited from interface net.sf.saxon.om.ValueRepresentation
`EMPTY_VALUE_ARRAY`

Constructor Summary
`SaxonImportQuery()`

Method Summary
`void` `addChild(NodeImpl node, int index)` Add a child node to this node.
`void` `compact(int size)` Compact the space used by this node
`Expression` `compile(Executable exec)` Compile the instruction on the stylesheet tree into an executable instruction for use at run-time.
`AxisIterator` `enumerateChildren(NodeTest test)` Get an enumeration of the children of this node
`NodeInfo` `getFirstChild()` Get the first child node of the element
`NodeInfo` `getLastChild()` Get the last child node of the element
`String` `getStringValue()` Return the string-value of the node, that is, the concatenation of the character content of all descendent elements and text nodes.
`CharSequence` `getStringValueCS()` Get the value of the item as a CharSequence.
`boolean` `hasChildNodes()` Determine if the node has any children.
`void` `importModule()` The importModule() method is called very early, before preparing the attributes, to make sure that all functions in the imported modules are available in the static context.
`void` `prepareAttributes()` Set the attribute list for the element.
`void` `useChildrenArray(NodeImpl[] array)` Supply an array to be used for the array of children.
`void` `validate()` Check that the stylesheet element is valid.

Methods inherited from class net.sf.saxon.style.StyleElement

`allocateLocationId, allocatePatternSlots, allocateSlots, allocateSlots, backwardsCompatibleModeIsEnabled, bindVariable, checkEmpty, checkTopLevel, checkWithinTemplate, compileSequenceConstructor, fixupReferences, forwardsCompatibleModeIsEnabled, getAttributeValue, getConstructType, getContainingSlotManager, getContainingStylesheet, getExecutable, getHostLanguage, getLineNumber, getLineNumber, getLocationProvider, getNamespaceResolver, getObjectFingerprint, getObjectNameCode, getPrecedence, getPreparedStylesheet, getProperties, getProperty, getSchemaType, getStaticContext, getStylesheetFunction, getSystemId, getTargetNamePool, getTypeAnnotation, getVersion, isExcludedNamespace, isExtensionNamespace, isInstruction, isTopLevel, makeAttributeValueTemplate, makeExpression, makeNameCode, makeNamespaceContext, makePattern, makeSequenceType, markTailCalls, mayContainFallback, mayContainSequenceConstructor, postValidate, processAllAttributes, processAttributes, replaceSubExpression, reportAbsence, setLineNumber, setObjectNameCode, substituteFor, typeCheck, typeCheck, validateSubtree`

Methods inherited from class net.sf.saxon.tree.ElementWithAttributes
`copy, getAttributeList, getAttributeValue, getDeclaredNamespaces, getInScopeNamespaceCodes, getPrefixForURI, getURICodeForPrefix, getURIForPrefix, initialise, iteratePrefixes, sendNamespaceDeclarations, setNamespaceDeclarations`

Methods inherited from class net.sf.saxon.tree.ElementImpl
`generateId, getBaseURI, getDocumentRoot, getNameCode, getNodeKind, getRoot, getSystemId, setNameCode, setSystemId`

Methods inherited from class net.sf.saxon.tree.NodeImpl
`atomize, compareOrder, equals, getColumnNumber, getConfiguration, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getTypeAnnotation, getTypedValue, getURI, hashCode, isSameNodeInfo, iterateAxis, iterateAxis`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface net.sf.saxon.trace.InstructionInfo
`getSystemId`

Constructor Detail

### SaxonImportQuery

    public SaxonImportQuery()

Method Detail

### importModule

    public void importModule()
                      throws XPathException

  The importModule() method is called very early, before preparing the attributes, to make sure that all functions in the imported modules are available in the static context.

  Throws:
    `XPathException`

### prepareAttributes

    public void prepareAttributes()
                           throws XPathException

  Description copied from class: `StyleElement`
  Set the attribute list for the element. This is called to process the attributes (note the distinction from processAttributes in the superclass). Must be supplied in a subclass

  Specified by:
    `prepareAttributes` in class `StyleElement`
  Throws:
    `XPathException`

### validate

    public void validate()
                  throws XPathException

  Description copied from class: `StyleElement`
  Check that the stylesheet element is valid. This is called once for each element, after the entire tree has been built. As well as validation, it can perform first-time initialisation. The default implementation does nothing; it is normally overriden in subclasses.

  Overrides:
    `validate` in class `StyleElement`
  Throws:
    `XPathException`

### compile

    public Expression compile(Executable exec)
                       throws XPathException

  Description copied from class: `StyleElement`
  Compile the instruction on the stylesheet tree into an executable instruction for use at run-time.

  Specified by:
    `compile` in class `StyleElement`
  Returns:
    either a ComputedExpression, or null. The value null is returned when compiling an instruction that returns a no-op, or when compiling a top-level object such as an xsl:template that compiles into something other than an instruction.
  Throws:
    `XPathException`

### hasChildNodes

    public final boolean hasChildNodes()

  Determine if the node has any children.

  Specified by:
    `hasChildNodes` in interface `NodeInfo`
  Overrides:
    `hasChildNodes` in class `NodeImpl`
  Returns:
    `true` if the node has any children, `false` if the node has no children.

### enumerateChildren

    public final AxisIterator enumerateChildren(NodeTest test)

  Get an enumeration of the children of this node

  Parameters:
    `test` - A NodeTest to be satisfied by the child nodes, or null if all child node are to be returned

### getFirstChild

    public final NodeInfo getFirstChild()

  Get the first child node of the element

  Overrides:
    `getFirstChild` in class `NodeImpl`
  Returns:
    the first child node of the required type, or null if there are no children

### getLastChild

    public final NodeInfo getLastChild()

  Get the last child node of the element

  Overrides:
    `getLastChild` in class `NodeImpl`
  Returns:
    the last child of the element, or null if there are no children

### getStringValue

    public String getStringValue()

  Return the string-value of the node, that is, the concatenation of the character content of all descendent elements and text nodes.

  Returns:
    the accumulated character content of the element, including descendant elements.
  See Also:
    `Item.getStringValueCS()`

### getStringValueCS

    public CharSequence getStringValueCS()

  Description copied from class: `NodeImpl`
  Get the value of the item as a CharSequence. This is in some cases more efficient than the version of the method that returns a String.

  Specified by:
    `getStringValueCS` in interface `Item`
  Specified by:
    `getStringValueCS` in interface `ValueRepresentation`
  Overrides:
    `getStringValueCS` in class `NodeImpl`
  Returns:
    the string value of the item
  See Also:
    `Item.getStringValue()`

### useChildrenArray

    public void useChildrenArray(NodeImpl[] array)

  Supply an array to be used for the array of children. For system use only.

### addChild

    public void addChild(NodeImpl node,
                         int index)

  Add a child node to this node. For system use only. Note: normalizing adjacent text nodes is the responsibility of the caller.

### compact

    public void compact(int size)

  Compact the space used by this node

Copyright (C) Michael H. Kay. All rights reserved.