Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.pattern
Class PatternWithPredicate

    java.lang.Object
      net.sf.saxon.pattern.Pattern
          net.sf.saxon.pattern.PatternWithPredicate

All Implemented Interfaces:
  Serializable, SourceLocator, Container, PatternFinder

    public class PatternWithPredicate

extends Pattern

See Also:
  Serialized Form

Constructor Summary
`PatternWithPredicate(Pattern basePattern, Expression predicate)`

Method Summary
`Pattern` | `analyze(ExpressionVisitor visitor, ExpressionVisitor.ContextItemType contextItemType)` Type-check the pattern.
`double` | `getDefaultPriority()` Determine the default priority to use if this pattern appears as a match pattern for a template with no explicit priority attribute.
`ItemType` | `getItemType()` Get an ItemType that all the items matching this pattern must satisfy
`Iterator` | `iterateSubExpressions()` Iterate over the subexpressions within this pattern
`boolean` | `matches(Item item, XPathContext context)` Determine whether this Pattern matches the given Node.

Methods inherited from class net.sf.saxon.pattern.Pattern
`allocateSlots, getColumnNumber, getContainerGranularity, getDependencies, getExecutable, getFingerprint, getHostLanguage, getLineNumber, getLocationProvider, getNodeKind, getPublicId, getSystemId, internalMatches, make, matchesBeneathAnchor, promote, replaceSubExpression, resolveCurrent, selectNodes, setExecutable, setLineNumber, setOriginalText, setSystemId, simplify, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### PatternWithPredicate

    public PatternWithPredicate(Pattern basePattern,
                                Expression predicate)

Method Detail

### matches

    public boolean matches(Item item,
                           XPathContext context)
                    throws XPathException

  Determine whether this Pattern matches the given Node. This is the main external interface for matching patterns: it sets current() to the node being tested

  Specified by:
    `matches` in class `Pattern`
  Parameters:
    `item` - The NodeInfo representing the Element or other node to be tested against the Pattern
    `context` - The dynamic context. Only relevant if the pattern uses variables, or contains calls on functions such as document() or key().
  Returns:
    true if the node matches the Pattern, false otherwise
  Throws:
    `XPathException`

### getItemType

    public ItemType getItemType()

  Get an ItemType that all the items matching this pattern must satisfy

  Specified by:
    `getItemType` in class `Pattern`
  Returns:
    an ItemType, as specific as possible, which all the matching items satisfy

### iterateSubExpressions

    public Iterator iterateSubExpressions()

  Iterate over the subexpressions within this pattern

  Overrides:
    `iterateSubExpressions` in class `Pattern`
  Returns:
    an iterator over the subexpressions. Default implementation returns an empty sequence

### analyze

    public Pattern analyze(ExpressionVisitor visitor,
                           ExpressionVisitor.ContextItemType contextItemType)
                    throws XPathException

  Type-check the pattern.

  Overrides:
    `analyze` in class `Pattern`
  Parameters:
    `visitor` - the expression visitor
    `contextItemType` - the type of the context item at the point where the pattern is defined. Set to null if it is known that the context item is undefined.
  Returns:
    the optimised Pattern
  Throws:
    `XPathException`

### getDefaultPriority

    public double getDefaultPriority()

  Determine the default priority to use if this pattern appears as a match pattern for a template with no explicit priority attribute.

  Overrides:
    `getDefaultPriority` in class `Pattern`
  Returns:
    the default priority for the pattern

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.