Интерфейс XPathResult
public interface XPathResult
Интерфейс
XPathResult представляет результат вычисления XPath 1.0 выражения в контексте конкретного узла. Поскольку вычисление XPath выражения может привести к различным типам результатов, этот объект позволяет определить и обработать тип и значение результата. См. также Спецификацию XPath для DOM уровня 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, 2023, 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/21/docs/api/jdk.xml.dom/org/w3c/dom/xpath/XPathResult.html