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
-
-
Field Summary
-
Fields inherited from interface org.exolab.adaptx.xpath.XPathExpression
BOOLEAN, ERROR, FILTER_EXPR, LOCATION_PATH, NODE_TEST, NUMBER, PATH_EXPR, PRIMARY, STEP, STRING, UNION_EXPR
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
evaluatePredicates(NodeSet nodes, XPathContext context)
Evaluates the PredicateExpr of this PathComponent against the given NodeSet and XPathContext.double
getDefaultPriority()
Determines the priority of a PatternExpr as follows:PredicateExpr
getPredicate()
Returns the PredicateExpr of this PathComponentXPathExpression
getSubExpression()
Returns the sub-expression encapsulated by this PathComponent.boolean
hasPredicates()
Returns true if this PathComponent has predicates expressions.boolean
isFilterExpr()
Returns true if this PathComponent is a FilterExpr.boolean
isLocationStep()
Returns true if this PathComponent is a LocationStep.-
Methods inherited from interface org.exolab.adaptx.xpath.expressions.MatchExpression
matches
-
Methods inherited from interface org.exolab.adaptx.xpath.XPathExpression
evaluate, getExprType, toString
-
-
-
-
Method Detail
-
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()
-
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:
isFilterExpr()
-
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 NodeSetcontext
- 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.
-
-