Class XSLEvaluate

All Implemented Interfaces:
Source, SourceLocator, ActiveSource, GroundedValue, Item, MutableNodeInfo, NamespaceResolver, NodeInfo, Sequence, Location, SteppingNode, SiblingCountingNode, Locator

public class XSLEvaluate extends StyleElement
Handler for xsl:evaluate elements in XSLT 3.0 stylesheet.
  • Constructor Details

    • XSLEvaluate

      public XSLEvaluate()
  • Method Details

    • isInstruction

      public boolean isInstruction()
      Determine whether this node is an instruction.
      Overrides:
      isInstruction in class StyleElement
      Returns:
      true - it is an instruction
    • isPermittedChild

      protected boolean isPermittedChild(StyleElement child)
      Specify that xsl:sort is a permitted child
      Overrides:
      isPermittedChild in class StyleElement
      Parameters:
      child - the child that may or may not be permitted
      Returns:
      true if the child is permitted.
    • getReturnedItemType

      protected ItemType getReturnedItemType()
      Determine the type of item returned by this instruction (only relevant if it is an instruction).
      Returns:
      the item type returned
    • mayContainSequenceConstructor

      protected boolean mayContainSequenceConstructor()
      Determine whether this type of element is allowed to contain a sequence constructor
      Overrides:
      mayContainSequenceConstructor in class StyleElement
      Returns:
      false: no, it may not contain a sequence constructor
    • prepareAttributes

      protected void prepareAttributes()
      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
    • validate

      public void validate(ComponentDeclaration decl) 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
      Parameters:
      decl - the declaration to be validated
      Throws:
      XPathException - if any error is found during validation
    • getTargetExpression

      public Expression getTargetExpression()
    • getContextItemExpression

      public Expression getContextItemExpression()
    • getBaseUriExpression

      public Expression getBaseUriExpression()
    • getNamespaceContextExpression

      public Expression getNamespaceContextExpression()
    • getSchemaAwareExpression

      public Expression getSchemaAwareExpression()
    • getWithParamsExpression

      public Expression getWithParamsExpression()
    • getOptionsExpression

      public Expression getOptionsExpression()
    • getRequiredType

      public SequenceType getRequiredType()
    • compile

      public Expression compile(Compilation exec, ComponentDeclaration decl) throws XPathException
      Description copied from class: StyleElement
      Compile the instruction on the stylesheet tree into an executable instruction for use at run-time.
      Overrides:
      compile in class StyleElement
      Parameters:
      exec - the compilation episode
      decl - the containing top-level declaration, for example xsl:function or xsl:template
      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 - if validation fails