Интерфейс XPathResult
public interface XPathResult
Интерфейс
XPathResult представляет результат вычисления выражения XPath 1.0 в контексте определённого узла. Поскольку вычисление выражения XPath может возвращать различные типы результатов, этот объект позволяет определить и манипулировать типом и значением результата. См. также Спецификацию XPath для Document Object Model (DOM) Level 3.
- Since:
- 1.4, DOM Level 3
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final short |
ANY_TYPE |
Это код не представляет конкретный тип. |
static final short |
ANY_UNORDERED_NODE_TYPE |
Результат — набор узлов, определённый , и будет доступен как один узел, который может быть null, если набор узлов пуст. |
static final short |
BOOLEAN_TYPE |
Результат — булево значение, определённое . |
static final short |
FIRST_ORDERED_NODE_TYPE |
Результат — набор узлов, определённый , и будет доступен как один узел, который может быть null, если набор узлов пуст. |
static final short |
NUMBER_TYPE |
Результат — число, определённое . |
static final short |
ORDERED_NODE_ITERATOR_TYPE |
Результат — набор узлов, определённый , который будет доступен итеративно, что приведет к узлам в порядке документа. |
static final short |
ORDERED_NODE_SNAPSHOT_TYPE |
Результат — набор узлов, определённый , который будет доступен как список снимков узлов, которые будут в исходном порядке документа. |
static final short |
STRING_TYPE |
Результат — строка, определённая . |
static final short |
UNORDERED_NODE_ITERATOR_TYPE |
Результат — набор узлов, определённый , который будет доступен итеративно, что может не выводить узлы в определённом порядке. |
static final short |
UNORDERED_NODE_SNAPSHOT_TYPE |
Результат — набор узлов, определённый , который будет доступен как список снимков узлов, которые могут быть не в определённом порядке. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
getBooleanValue() |
Значение этого булевого результата. |
boolean |
getInvalidIteratorState() |
Указывает, что итератор стал недоступным. |
double |
getNumberValue() |
Значение этого числового результата. |
short |
getResultType() |
Код, представляющий тип этого результата, как определено в константах типов. |
Node |
getSingleNodeValue() |
Значение этого результата единственного узла, которое может быть null. |
int |
getSnapshotLength() |
Количество узлов в снимке результата. |
String |
getStringValue() |
Значение этого строкового результата. |
Node |
iterateNext() |
Итерирует и возвращает следующий узел из набора узлов или null, если больше узлов нет. |
Node |
snapshotItem |
Возвращает index-й элемент в коллекции снимка. |
Подробное описание полей
ANY_TYPE
static final short ANY_TYPE
Этот код не представляет конкретный тип. Оценка выражения XPath никогда не приведет к этому типу. Если этот тип запрошен, то оценка возвращает любой тип, который естественным образом получается в результате оценки выражения.
Если естественный результат — набор узлов, когда был запрошен
Если естественный результат — набор узлов, когда был запрошен
ANY_TYPE, то UNORDERED_NODE_ITERATOR_TYPE всегда является результатом типа. Любая другая форма представления набора узлов должна быть явно запрошена.- См. также:
NUMBER_TYPE
static final short NUMBER_TYPE
Результат — число, определенное . Изменение документа не делает число недействительным, но может означать, что повторная оценка не даст то же самое число.
- См. также:
STRING_TYPE
static final short STRING_TYPE
Результат — строка, определенная . Изменение документа не делает строку недействительной, но может означать, что строка больше не соответствует текущему документу.
- См. также:
BOOLEAN_TYPE
static final short BOOLEAN_TYPE
Результат — логическое значение, определенное . Изменение документа не делает логическое значение недействительным, но может означать, что повторная оценка не даст то же самое логическое значение.
- См. также:
UNORDERED_NODE_ITERATOR_TYPE
static final short UNORDERED_NODE_ITERATOR_TYPE
Результат — набор узлов, определенный , который будет обрабатываться итеративно, что может не гарантировать определенный порядок узлов. Изменение документа делает итерацию недействительной.
Это тип по умолчанию, возвращаемый, если результат — набор узлов и
Это тип по умолчанию, возвращаемый, если результат — набор узлов и
ANY_TYPE запрошен.- См. также:
ORDERED_NODE_ITERATOR_TYPE
static final short ORDERED_NODE_ITERATOR_TYPE
Результат — набор узлов, определенный , который будет обрабатываться итеративно и будет генерировать узлы в порядке документа. Изменение документа делает итерацию недействительной.
- См. также:
UNORDERED_NODE_SNAPSHOT_TYPE
static final short UNORDERED_NODE_SNAPSHOT_TYPE
Результат — набор узлов, определенный , который будет обрабатываться как список снимков узлов, которые могут быть в произвольном порядке. Изменение документа не делает снимок недействительным, но может означать, что повторная оценка не даст тот же самый снимок, а узлы в снимке могут быть изменены, перемещены или удалены из документа.
- См. также:
ORDERED_NODE_SNAPSHOT_TYPE
static final short ORDERED_NODE_SNAPSHOT_TYPE
Результат — набор узлов, определенный , который будет обрабатываться как список снимков узлов, которые будут в исходном порядке документа. Изменение документа не делает снимок недействительным, но может означать, что повторная оценка не даст тот же самый снимок, а узлы в снимке могут быть изменены, перемещены или удалены из документа.
- См. также:
ANY_UNORDERED_NODE_TYPE
static final short ANY_UNORDERED_NODE_TYPE
Результат — набор узлов, определенный , который будет обрабатываться как один узел, который может быть
Если в фактическом результате более одного узла, возвращаемый одиночный узел может не быть первым в порядке документа.
null, если набор узлов пуст. Изменение документа не делает узел недействительным, но может означать, что узел результата больше не соответствует текущему документу. Это удобство, которое позволяет оптимизацию, так как реализация может остановиться, как только любой узел в результирующем наборе будет найден. Если в фактическом результате более одного узла, возвращаемый одиночный узел может не быть первым в порядке документа.
- См. также:
FIRST_ORDERED_NODE_TYPE
static final short FIRST_ORDERED_NODE_TYPE
Результат — набор узлов, определенный , и будет обрабатываться как одиночный узел, который может быть
Если в фактическом результате более одного узла, возвращаемый одиночный узел будет первым в порядке документа.
null, если набор узлов пуст. Изменение документа не делает узел недействительным, но может означать, что узел результата больше не соответствует текущему документу. Это удобство позволяет оптимизацию, так как реализация может остановиться, как только первый узел в порядке документа результирующего набора будет найден. Если в фактическом результате более одного узла, возвращаемый одиночный узел будет первым в порядке документа.
- См. также:
Подробное описание методов
getResultType
short getResultType()
Код, представляющий тип этого результата, как определено в константах типа.
getNumberValue
double getNumberValue() throws XPathException
Значение этого числового результата. Если базовый тип double привязки DOM не напрямую поддерживает точный результат IEEE 754 выражения XPath, то определение привязки должно указать, как число XPath преобразуется в число привязки.
- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеNUMBER_TYPE.
getStringValue
String getStringValue() throws XPathException
Значение этого строкового результата.
- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеSTRING_TYPE.
getBooleanValue
boolean getBooleanValue() throws XPathException
Значение этого логического результата.
- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеBOOLEAN_TYPE.
getSingleNodeValue
Node getSingleNodeValue() throws XPathException
Значение этого результата единственного узла, которое может быть
null.- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеANY_UNORDERED_NODE_TYPEилиFIRST_ORDERED_NODE_TYPE.
getInvalidIteratorState
boolean getInvalidIteratorState()
Указывает, что итератор стал недопустимым. Истина, если
resultType UNORDERED_NODE_ITERATOR_TYPE или ORDERED_NODE_ITERATOR_TYPE, и документ был изменён с момента возвращения этого результата.getSnapshotLength
int getSnapshotLength() throws XPathException
Количество узлов в снимке результата. Допустимые значения для индексов snapshotItem находятся в диапазоне от
0 до snapshotLength-1 включительно.- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеUNORDERED_NODE_SNAPSHOT_TYPEилиORDERED_NODE_SNAPSHOT_TYPE.
iterateNext
Node iterateNext() throws XPathException, DOMException
Итеративно возвращает следующий узел из набора узлов или
null, если больше нет узлов.- Возвращает:
- Возвращает следующий узел.
- Выбрасывает:
-
XPathException- TYPE_ERR: вызывается, еслиresultTypeнеUNORDERED_NODE_ITERATOR_TYPEилиORDERED_NODE_ITERATOR_TYPE. -
DOMException- INVALID_STATE_ERR: Документ был изменён с момента возвращения результата.
snapshotItem
Node snapshotItem(int index) throws XPathException
Возвращает
index-й элемент в коллекции снимков. Если index больше или равно количеству узлов в списке, этот метод возвращает null. В отличие от результата итератора, снимок не становится недействительным, но может не соответствовать текущему документу, если он изменён.- Параметры:
-
index- Индекс в коллекции снимков. - Возвращает:
- Узел в
index-й позиции вNodeList, илиnull, если это не является допустимым индексом. - Исключение:
-
XPathException- TYPE_ERR: генерируется, еслиresultTypeне являетсяUNORDERED_NODE_SNAPSHOT_TYPEилиORDERED_NODE_SNAPSHOT_TYPE.
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/jdk.xml.dom/org/w3c/dom/xpath/XPathResult.html