Интерфейс XPathResult
public interface XPathResult
Интерфейс
XPathResult представляет результат вычисления выражения XPath 1.0 в контексте определённого узла. Поскольку вычисление выражения XPath может приводить к результатам разных типов, этот объект позволяет определить тип и значение результата и работать с ними. См. также спецификацию Document Object Model (DOM) Level 3 XPath.
- Начиная с:
- 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
Значение этого числового результата. Если собственный тип DOM-привязки double не поддерживает непосредственно точный результат выражения XPath в формате IEEE 754, то определение того, как число 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()
Указывает, что итератор стал недействительным. Возвращает true, если
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://docs.oracle.com/en/java/javase/25/docs/api/jdk.xml.dom/org/w3c/dom/xpath/XPathResult.html