Интерфейс XPathResult
public interface XPathResult
Интерфейс XPathResult представляет собой результат вычисления выражения XPath 1.0 в контексте определенного узла. Поскольку вычисление выражения XPath может привести к различным типам результатов, этот объект позволяет определить и манипулировать типом и значением результата.
См. также Спецификацию XPath уровня 3 Document Object Model (DOM).
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static short | ANY_TYPE | Этот код не представляет конкретный тип. |
static short | ANY_UNORDERED_NODE_TYPE | Результат — множество узлов, определённое и будет обрабатываться как один узел, который может быть |
static short | BOOLEAN_TYPE | Результат — булево значение, определённое по. |
static short | FIRST_ORDERED_NODE_TYPE | Результат — множество узлов, определённое и будет обрабатываться как один узел, который может быть |
static short | NUMBER_TYPE | Результат — число, определённое по. |
static short | ORDERED_NODE_ITERATOR_TYPE | Результат — множество узлов, определённое , которое будет обрабатываться итеративно, что даст узлы в порядке документа. |
static short | ORDERED_NODE_SNAPSHOT_TYPE | Результат — множество узлов, определённое , которое будет обрабатываться как список снимков узлов, которые будут в исходном порядке документа. |
static short | STRING_TYPE | Результат — строка, определённая по. |
static short | UNORDERED_NODE_ITERATOR_TYPE | Результат — множество узлов, определённое , которое будет обрабатываться итеративно, возможно, не в определённом порядке. |
static short | UNORDERED_NODE_SNAPSHOT_TYPE | Результат — множество узлов, определённое , которое будет обрабатываться как список снимков узлов, которые могут быть не в определённом порядке. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | getBooleanValue() | Значение этого булева результата. |
boolean | getInvalidIteratorState() | Указывает, что итератор стал недопустимым. |
double | getNumberValue() | Значение этого числового результата. |
short | getResultType() | Код, представляющий тип этого результата, как определено константами типа. |
Node | getSingleNodeValue() | Значение этого результата в виде единственного узла, который может быть |
int | getSnapshotLength() | Количество узлов в результате снимка. |
String | getStringValue() | Значение этого строкового результата. |
Node | iterateNext() | Итерирует и возвращает следующий узел из множества узлов или |
Node | snapshotItem(int 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()
Указывает, что итератор стал недействительным. 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, 2020, 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/11/docs/api/jdk.xml.dom/org/w3c/dom/xpath/XPathResult.html