|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.saxon.expr.Expression net.sf.saxon.expr.FunctionCall net.sf.saxon.functions.SystemFunction net.sf.saxon.functions.Id
public class Id
The XPath id() or element-with-id() function XPath 2.0 version: accepts any sequence as the first parameter; each item in the sequence is taken as an IDREFS value, that is, a space-separated list of ID values. Also accepts an optional second argument to identify the target document, this defaults to the context node.
Field Summary | |
---|---|
static int |
ELEMENT_WITH_ID
|
static int |
ID
|
Fields inherited from class net.sf.saxon.functions.SystemFunction |
---|
operation |
Fields inherited from class net.sf.saxon.expr.FunctionCall |
---|
argument |
Fields inherited from class net.sf.saxon.expr.Expression |
---|
EVALUATE_METHOD, ITERATE_METHOD, locationId, PROCESS_METHOD, staticProperties |
Constructor Summary | |
---|---|
Id()
|
Method Summary | |
---|---|
PathMap.PathMapNodeSet |
addToPathMap(PathMap pathMap,
PathMap.PathMapNodeSet pathMapNodeSet)
Add a representation of a doc() call or similar function to a PathMap. |
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)
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 |
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)
2-argument version of getIdSingle, retained to support Java code compiled using Saxon 9.1. |
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,
ItemType contextItemType)
Type-check the expression. |
Methods inherited from class net.sf.saxon.functions.SystemFunction |
---|
addContextDocumentArgument, addDocToPathMap, computeCardinality, copy, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault |
Methods inherited from class net.sf.saxon.expr.FunctionCall |
---|
addExternalFunctionCallToPathMap, checkArgumentCount, equals, explain, getArguments, getDisplayName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, promote, replaceSubExpression, setArguments, setFunctionName, simplifyArguments, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int ID
public static final int ELEMENT_WITH_ID
Constructor Detail |
---|
public Id()
Method Detail |
---|
public Expression simplify(ExpressionVisitor visitor) throws XPathException
simplify
in class FunctionCall
visitor
- an expression visitor
XPathException
- if an error is discovered during expression
rewritingpublic Expression typeCheck(ExpressionVisitor visitor, ItemType contextItemType) throws XPathException
typeCheck
in class FunctionCall
visitor
- an expression visitorcontextItemType
- the static type of "." at the point where this expression is invoked.
The parameter is set to null if it is known statically that the context item will be undefined.
If the type of the context item is not known statically, the argument is set to
Type.ITEM_TYPE
XPathException
- if an error is discovered during this phase
(typically a type error)public void checkArguments(ExpressionVisitor visitor) throws XPathException
checkArguments
in class SystemFunction
visitor
- the expression visitor
XPathException
public Expression preEvaluate(ExpressionVisitor visitor)
preEvaluate
in class FunctionCall
visitor
- an expression visitor
public int computeSpecialProperties()
computeSpecialProperties
in class SystemFunction
public PathMap.PathMapNodeSet addToPathMap(PathMap pathMap, PathMap.PathMapNodeSet pathMapNodeSet)
addToPathMap
in class Expression
pathMap
- the PathMap to which the expression should be addedpathMapNodeSet
-
public SequenceIterator iterate(XPathContext context) throws XPathException
iterate
in interface SequenceIterable
iterate
in class Expression
context
- supplies the context for evaluation
XPathException
- 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
public static SequenceIterator getIdSingle(DocumentInfo doc, String idrefs) throws XPathException
doc
- The document to be searchedidrefs
- a string containing zero or more whitespace-separated ID values to be found in the document
XPathException
public 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 document
XPathException
public static SequenceIterator getIdMultiple(DocumentInfo doc, SequenceIterator idrefs) 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 document
XPathException
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |