Class XSLMode

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

public class XSLMode extends StyleElement
Handler for xsl:mode elements in stylesheet. The xsl:mode element defines the properties of a mode. The mode is identified by the name attribute, defaulting to the unnamed default mode (which may also be written "#default").

The attribute streamable="yes|no" which indicates whether templates in this mode are to be processed by streaming.

The attribute on-no-match indicates which family of template rules should be used to process nodes when there is no explicit match

  • Constructor Details

    • XSLMode

      public XSLMode()
  • Method Details

    • isDeclaration

      public boolean isDeclaration()
      Ask whether this node is a declaration, that is, a permitted child of xsl:stylesheet (including xsl:include and xsl:import).
      Overrides:
      isDeclaration in class StyleElement
      Returns:
      true for this element
    • isInstruction

      public boolean isInstruction()
      Determine whether this node is an instruction.
      Overrides:
      isInstruction in class StyleElement
      Returns:
      false - it is a declaration
    • getObjectName

      public StructuredQName getObjectName()
      Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. This is used only where the name is known statically. If there is no name, the value will be null.
      Overrides:
      getObjectName in class StyleElement
      Returns:
      the name of the object declared in this element, if any
    • index

      public void index(ComponentDeclaration decl, PrincipalStylesheetModule top) throws XPathException
      Method supplied by declaration elements to add themselves to a stylesheet-level index
      Overrides:
      index in class StyleElement
      Parameters:
      decl - the Declaration being indexed. (This corresponds to the StyleElement object except in cases where one module is imported several times with different precedence.)
      top - the outermost XSLStylesheet element
      Throws:
      XPathException - if any error is encountered
    • 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
    • compileDeclaration

      public void compileDeclaration(Compilation compilation, ComponentDeclaration decl) throws XPathException
      Description copied from class: StyleElement
      Compile a declaration in the stylesheet tree for use at run-time.
      Overrides:
      compileDeclaration in class StyleElement
      Parameters:
      compilation - the compilation episode
      decl - the containing top-level declaration, for example xsl:function or xsl:template
      Throws:
      XPathException - if compilation fails
    • getMode

      public SimpleMode getMode()