Package net.sf.saxon.trans.rules

## Interface BuiltInRuleSet

- All Superinterfaces:
    `ContextOriginator`
  All Known Implementing Classes:
    `DeepCopyRuleSet`, `DeepSkipRuleSet`, `FailRuleSet`, `RuleSetWithWarnings`, `ShallowCopyRuleSet`, `ShallowSkipRuleSet`, `TextOnlyCopyRuleSet`

      public interface BuiltInRuleSet
      extends ContextOriginator

  Defines a set of built-in template rules (rules for use when no user-defined template rules match a given node)

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `APPLY_TEMPLATES_TO_ATTRIBUTES` |
    `static int` | `APPLY_TEMPLATES_TO_CHILDREN` |
    `static int` | `DEEP_COPY` |
    `static int` | `DEEP_SKIP` |
    `static int` | `FAIL` |
    `static int` | `SHALLOW_COPY` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int[]` | `getActionForParentNodes​(int nodeKind)` | Get the action for unmatched element and document nodes (used when streaming)
    `java.lang.String` | `getName()` | Identify this built-in rule set
    `void` | `process​(Item item, ParameterSet parameters, ParameterSet tunnelParams, Outputter output, XPathContext context, Location locationId)` | Perform the built-in template action for a given item.

- - ### Field Detail

    - #### DEEP_COPY

          static final int DEEP_COPY

      See Also:
        Constant Field Values

    - #### DEEP_SKIP

          static final int DEEP_SKIP

      See Also:
        Constant Field Values

    - #### FAIL

          static final int FAIL

      See Also:
        Constant Field Values

    - #### SHALLOW_COPY

          static final int SHALLOW_COPY

      See Also:
        Constant Field Values

    - #### APPLY_TEMPLATES_TO_ATTRIBUTES

          static final int APPLY_TEMPLATES_TO_ATTRIBUTES

      See Also:
        Constant Field Values

    - #### APPLY_TEMPLATES_TO_CHILDREN

          static final int APPLY_TEMPLATES_TO_CHILDREN

      See Also:
        Constant Field Values

  - ### Method Detail

    - #### process

          void process​(Item item,
                       ParameterSet parameters,
                       ParameterSet tunnelParams,
                       Outputter output,
                       XPathContext context,
                       Location locationId)
                throws XPathException

      Perform the built-in template action for a given item.
      Parameters:
        `item` - the item to be processed
        `parameters` - the parameters supplied to apply-templates
        `tunnelParams` - the tunnel parameters to be passed through
        `output` - the destination for the result
        `context` - the dynamic evaluation context
        `locationId` - location of the instruction (apply-templates, apply-imports etc) that caused the built-in template to be invoked
      Throws:
        `XPathException` - if any dynamic error occurs

    - #### getName

          java.lang.String getName()

      Identify this built-in rule set
      Returns:
        the XSLT keyword used to identify this rule-set, for example "deep-copy

    - #### getActionForParentNodes

          int[] getActionForParentNodes​(int nodeKind)

      Get the action for unmatched element and document nodes (used when streaming)
      Parameters:
        `nodeKind` - the node kind: either Type.DOCUMENT or Type.ELEMENT
      Returns:
        the sequence of actions to be taken