Класс QXmlItem
Класс QXmlItem содержит либо узел XML, либо атомарное значение. Подробнее...
| Заголовок: | #include <QXmlItem> |
| qmake: | QT += xmlpatterns |
| С момента: | Qt 4.4 |
Примечание: Все функции в этом классе являются реентерабельными.
Открытые типы
| typedef | Iterator |
Открытые функции
| QXmlItem() | |
| QXmlItem(const QXmlItem &other) | |
| QXmlItem(const QXmlNodeModelIndex &node) | |
| QXmlItem(const QVariant &atomicValue) | |
| ~QXmlItem() | |
| bool | isAtomicValue() const |
| bool | isNode() const |
| bool | isNull() const |
| QVariant | toAtomicValue() const |
| QXmlNodeModelIndex | toNodeModelIndex() const |
| QXmlItem & | operator=(const QXmlItem &other) |
Подробное описание
Класс QXmlItem содержит либо узел XML, либо атомарное значение.
В XQuery все выражения вычисляются как последовательность элементов, где каждый элемент является либо узлом XML, либо атомарным значением. Запрос в следующем фрагменте кода вычисляется как последовательность из пяти элементов.
<aNode/>,
xs:base64Binary("FFFF"),
current-date(),
3e3, (: A floating point value :)
attribute {"name"} {()} Эти пять элементов: элемент, атомарное значение (двоичные данные, закодированные в base64), дата, число с плавающей точкой и атрибут.
QXmlItem — это класс, представляющий эти элементы XQuery в API Qt XML Patterns. Экземпляр QXmlItem (не равный null) является либо узлом, либо атомарным значением. Вызов isNode() или isAtomicValue() указывает, что это такое. Атомарные значения в других частях API Qt представлены экземплярами QVariant, и экземпляр QXmlItem, представляющий атомарное значение, можно преобразовать в QVariant с помощью вызова toAtomicValue(). Экземпляр QXmlItem, оборачивающий узел, в других частях API представлен экземпляром QXmlNodeModelIndex. Узел QXmlItem можно преобразовать в QXmlNodeModelIndex с помощью вызова toNodeModelIndex().
Экземпляр QXmlItem с конструктором по умолчанию не является ни узлом, ни атомарным значением. Он считается нулевым, в этом случае isNull() возвращает true.
Экземпляр QXmlItem будет висячим, если модель узла XML, на который он ссылается, будет удалена, если это QXmlNodeModelIndex.
Документация по типам членов
typedef QXmlItem::Iterator
QAbstractXmlForwardIterator над QXmlItem.
Документация по функциям-членам
QXmlItem::QXmlItem()
Конструирует нулевой QXmlItem, который не является ни узлом, ни атомарным значением. isNull() возвращает true для экземпляра, созданного по умолчанию.
QXmlItem::QXmlItem(const QXmlItem &other)
Копирующий конструктор создает копию other.
QXmlItem::QXmlItem(const QXmlNodeModelIndex &node)
Конструирует узел QXmlItem, который является копией node.
См. также isNode().
QXmlItem::QXmlItem(const QVariant &atomicValue)
Конструирует атомарное значение QXmlItem со значением atomicValue.
См. также isAtomicValue().
QXmlItem::~QXmlItem()
Деструктор.
bool QXmlItem::isAtomicValue() const
Возвращает true, если этот элемент является атомарным значением. Возвращает false, если это узел или null.
См. также isNull() и isNode().
bool QXmlItem::isNode() const
Возвращает true, если этот элемент является узлом. Возвращает false, если это атомарное значение или null.
См. также isNull() и isAtomicValue().
bool QXmlItem::isNull() const
Возвращает true, если этот QXmlItem не является ни узлом, ни атомарным значением. Экземпляры QXmlItem с конструктором по умолчанию являются нулевыми.
QVariant QXmlItem::toAtomicValue() const
Если этот QXmlItem представляет атомарное значение, он преобразуется в соответствующий QVariant и возвращается. Если этот QXmlItem не является атомарным значением, возвращаемое значение — это QVariant по умолчанию. Вы можете вызвать isAtomicValue(), чтобы проверить, является ли элемент атомарным значением.
См. также isAtomicValue().
QXmlNodeModelIndex QXmlItem::toNodeModelIndex() const
Если этот QXmlItem представляет узел, он возвращает элемент в виде QXmlNodeModelIndex. Если этот QXmlItem не является узлом, возвращаемое значение не определено. Вы можете вызвать isNode(), чтобы проверить, является ли элемент узлом.
См. также isNode().
QXmlItem &QXmlItem::operator=(const QXmlItem &other)
Присваивает other к this.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qxmlitem.html