Package com.icl.saxon

Class 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.
    • Constructor Detail

      • Mode

        public Mode()
    • Method Detail

      • 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