public class Id extends SystemFunctionCall implements Callable
Modifier and Type | Field and Description |
---|---|
static int |
ELEMENT_WITH_ID |
static int |
ID |
operation
argument
EFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, WATCH_METHOD
Constructor and Description |
---|
Id() |
Modifier and Type | Method and Description |
---|---|
PathMap.PathMapNodeSet |
addToPathMap(PathMap pathMap,
PathMap.PathMapNodeSet pathMapNodeSet)
Add a representation of a doc() call or similar function to a PathMap.
|
Sequence |
call(XPathContext context,
Sequence[] arguments)
Evaluate the expression
|
void |
checkArguments(ExpressionVisitor visitor)
Static analysis: prevent sorting of the argument
|
int |
computeSpecialProperties()
Get the static properties of this expression (other than its type).
|
static SequenceIterator |
getIdMultiple(DocumentInfo doc,
SequenceIterator idrefs,
int operation)
Get an iterator over the nodes that have an id equal to one of the values is a set of whitespace separated
strings
|
static SequenceIterator |
getIdSingle(DocumentInfo doc,
String idrefs,
int operation)
Get an iterator over the nodes that have an id equal to one of the values is a whitespace separated
string
|
SequenceIterator |
iterate(XPathContext context)
Evaluate the function to return an iteration of selected nodes.
|
Expression |
preEvaluate(ExpressionVisitor visitor)
preEvaluate: this method suppresses compile-time evaluation by doing nothing
|
Expression |
simplify(ExpressionVisitor visitor)
Simplify: add a second implicit argument, the context document
|
Expression |
typeCheck(ExpressionVisitor visitor,
ContextItemStaticInfo contextInfo)
Type-check the expression.
|
addContextDocumentArgument, addDocToPathMap, bindStaticContext, computeCardinality, copy, equalOrNull, equals, getContextNode, getConvertingCallable, getDefaultArgumentNode, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getImplementationMethod, getItemType, getOperation, getRequiredType, makeSystemFunction, operands, optimize, setDetails, toShortString, useContextItemAsDefault
addExternalFunctionCallToPathMap, checkArgumentCount, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, promote, replaceOperand, setArguments, setFunctionName, simplifyArguments, toString
adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, clearStreamabilityData, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getConfiguration, getConstructType, getContainer, getDependencies, getEvaluationMethod, getExpressionCompiler, getHostLanguage, getIntegerBounds, getIntrinsicDependencies, getLineNumber, getLocationId, getObjectName, getPosture, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getStreamability, getStreamingAdjunct, getSweep, getSystemId, hasVariableBinding, identityHashCode, implementsStaticTypeCheck, isIdentical, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, makeStreamingAdjunct, markTailFunctionCalls, operandList, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, setPostureAndSweep, staticTypeCheck, suppressValidation, toPattern, toStreamingPattern, typeError, unordered
public static final int ID
public static final int ELEMENT_WITH_ID
public Expression simplify(ExpressionVisitor visitor) throws XPathException
simplify
in class Expression
visitor
- an expression visitorXPathException
- if an error is discovered during expression
rewritingpublic Expression typeCheck(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) throws XPathException
typeCheck
in class FunctionCall
visitor
- an expression visitorcontextInfo
- Information available statically about the context item: whether it is (possibly)
absent; its static type; its streaming posture.XPathException
- if an error is discovered during this phase
(typically a type error)public void checkArguments(ExpressionVisitor visitor) throws XPathException
checkArguments
in class SystemFunctionCall
visitor
- the expression visitorXPathException
- if the arguments are incorrectpublic Expression preEvaluate(ExpressionVisitor visitor)
preEvaluate
in class FunctionCall
visitor
- an expression visitorpublic int computeSpecialProperties()
computeSpecialProperties
in class SystemFunctionCall
public PathMap.PathMapNodeSet addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
addToPathMap
in class Expression
pathMap
- the PathMap to which the expression should be addedpathMapNodeSet
- the PathMapNodeSet to which the paths embodied in this expression should be addedpublic SequenceIterator iterate(XPathContext context) throws XPathException
iterate
in class Expression
context
- supplies the context for evaluationXPathException
- if any dynamic error occurs evaluating the
expressionpublic static SequenceIterator getIdSingle(DocumentInfo doc, String idrefs, int operation) throws XPathException
doc
- The document to be searchedidrefs
- a string containing zero or more whitespace-separated ID values to be found in the documentoperation
- either ID
or ELEMENT_WITH_ID
XPathException
- if an error occurspublic static SequenceIterator getIdMultiple(DocumentInfo doc, SequenceIterator idrefs, int operation) throws XPathException
doc
- The document to be searchedidrefs
- an iterator over a set of strings each of which is a string containing
zero or more whitespace-separated ID values to be found in the documentoperation
- distinguishes id() and element-with-id()XPathException
- if an error occurspublic Sequence call(XPathContext context, Sequence[] arguments) throws XPathException
call
in interface Callable
context
- the dynamic evaluation contextarguments
- the values of the arguments, supplied as SequenceIteratorsXPathException
- if a dynamic error occurs during the evaluation of the expressionCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.