Package com.icl.saxon

Class Mode

java.lang.Object
com.icl.saxon.Mode

public class Mode extends Object
A Mode is a collection of rules; the selection of a rule to apply to a given element is determined by a Pattern.
Author:
invalid input: '<'A HREF="mhkay@iclway.co.uk>Michael H. Kay
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addRule(Pattern p, Object obj, int precedence, double priority)
    Add a rule to the Mode.
    int
    getList(int fingerprint, int type)
    Determine which list to use for a given pattern (we must also search the generic list)
    int
    Get the name of this mode (for tracing output)
    getRule(NodeInfo node, int min, int max, Context context)
    Get the rule corresponding to a given Node, by finding the best Pattern match, subject to a minimum and maximum precedence.
    getRule(NodeInfo node, Context context)
    Get the rule corresponding to a given Node, by finding the best Pattern match.
    void
    setNameCode(int nameCode)
    Set the name of this mode (for tracing output)

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Mode

      public Mode()
  • Method Details

    • setNameCode

      public void setNameCode(int nameCode)
      Set the name of this mode (for tracing output)
    • getNameCode

      public int getNameCode()
      Get the name of this mode (for tracing output)
    • addRule

      public void addRule(Pattern p, Object obj, int precedence, double priority)
      Add a rule to the Mode.
      The rule effectively replaces any other rule for the same pattern/mode at the same or a lower priority.
      Parameters:
      p - a Pattern
      obj - the Object to return from getRule() when the supplied element matches this Pattern
    • getList

      public int getList(int fingerprint, int type)
      Determine which list to use for a given pattern (we must also search the generic list)
    • getRule

      public Object getRule(NodeInfo node, Context context) throws TransformerException
      Get the rule corresponding to a given Node, by finding the best Pattern match.
      Parameters:
      node - the NodeInfo referring to the node to be matched
      Returns:
      the object (e.g. a NodeHandler) registered for that element, if any (otherwise null).
      Throws:
      TransformerException
    • getRule

      public Object getRule(NodeInfo node, int min, int max, Context context) throws XPathException
      Get the rule corresponding to a given Node, by finding the best Pattern match, subject to a minimum and maximum precedence. (This supports xsl:apply-imports)
      Parameters:
      node - the NodeInfo referring to the node to be matched
      Returns:
      the object (e.g. a NodeHandler) registered for that element, if any (otherwise null).
      Throws:
      XPathException