Interface PathComponent

All Superinterfaces:
MatchExpression, XPathExpression
All Known Subinterfaces:
FilterExpr, LocationStep
All Known Implementing Classes:
AbstractPathComponent

public interface PathComponent extends XPathExpression, MatchExpression
A basic interface for LocationStep or FilterExpr
Version:
$Revision: 4050 $ $Date: 2004-01-13 07:04:15 +0100 (Tue, 13 Jan 2004) $
Author:
Keith Visco
  • Method Details

    • isFilterExpr

      boolean isFilterExpr()
      Returns true if this PathComponent is a FilterExpr. Note that if this method returns true, then a call to #isLocationStep must return false.
      Returns:
      true if this PathComponent is a FilterExpr
      See Also:
    • isLocationStep

      boolean isLocationStep()
      Returns true if this PathComponent is a LocationStep. Note that if this method returns true, then a call to #isFilterExpr must return false.
      Returns:
      true if this PathComponent is a LocationStep
      See Also:
    • getDefaultPriority

      double getDefaultPriority()
      Determines the priority of a PatternExpr as follows:
        From the 19991116 XSLT 1.0 Recommendation:
        + If the pattern has the form of a QName preceded by a
          ChildOrAttributeAxisSpecifier or has the form 
          processing-instruction(Literal) then the priority is 0.
        + If the pattern has the form NCName:* preceded by a 
          ChildOrAttributeAxisSpecifier, then the priority is -0.25
        + Otherwise if the pattern consists of just a NodeTest 
          preceded by a ChildOrAttributeAxisSpecifier then the
          priority is -0.5
        + Otherwise the priority is 0.5
       
      Returns:
      the priority for this PatternExpr
    • getSubExpression

      XPathExpression getSubExpression()
      Returns the sub-expression encapsulated by this PathComponent. the sub-expression will either be a PrimaryExpr if this PathComponent is a FilterExpr, or a NodeExpression if this Pathcomponent is a LocationStep. This method may return null if no such sub-expression exists for the PathComponent.
      Returns:
      the sub-expression encapsulated by this PathComponent.
    • evaluatePredicates

      void evaluatePredicates(NodeSet nodes, XPathContext context) throws XPathException
      Evaluates the PredicateExpr of this PathComponent against the given NodeSet and XPathContext.
      Parameters:
      nodes - the current NodeSet
      context - the XPathContext for use during evaluation.
      Throws:
      XPathException
    • getPredicate

      PredicateExpr getPredicate()
      Returns the PredicateExpr of this PathComponent
      Returns:
      the PredicateExpr of this PathComponent
    • hasPredicates

      boolean hasPredicates()
      Returns true if this PathComponent has predicates expressions.
      Returns:
      true if this PathComponent has predicates expressions.