|  | Home · All Namespaces · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# QSimpleXmlNodeModel Class Reference
[QtXmlPatterns module]

The QSimpleXmlNodeModel class is an implementation of QAbstractXmlNodeModel sufficient for many common cases. More...

     #include <QSimpleXmlNodeModel>

Inherits QAbstractXmlNodeModel.

Note: All the functions in this class are reentrant.

This class was introduced in Qt 4.4.

- List of all members, including inherited members

### Public Functions

- QSimpleXmlNodeModel ( const QXmlNamePool & namePool )
- virtual ~QSimpleXmlNodeModel ()
- virtual QUrl baseUri ( const QXmlNodeModelIndex & node ) const
- virtual QXmlNodeModelIndex elementById ( const QXmlName & id ) const
- QXmlNamePool & namePool () const
- virtual QVector<QXmlName> namespaceBindings ( const QXmlNodeModelIndex & node ) const
- virtual QVector<QXmlNodeModelIndex> nodesByIdref ( const QXmlName & idref ) const
- virtual QString stringValue ( const QXmlNodeModelIndex & node ) const

- 11 public functions inherited from QAbstractXmlNodeModel

### Additional Inherited Members

- 5 protected functions inherited from QAbstractXmlNodeModel

## Detailed Description

The QSimpleXmlNodeModel class is an implementation of QAbstractXmlNodeModel sufficient for many common cases.

Subclassing QAbstractXmlNodeModel can be a significant task, because it requires implementing several, complex member functions. QSimpleXmlNodeModel provides default implementations of these member functions that are suitable for a wide range of node models.

Subclasses of QSimpleXmlNodeModel must be thread-safe.

## Member Function Documentation

### QSimpleXmlNodeModel::QSimpleXmlNodeModel ( const QXmlNamePool & namePool )

Constructs a QSimpleXmlNodeModel for use with with the specified namePool.

### QSimpleXmlNodeModel::~QSimpleXmlNodeModel () `[virtual]`

Destructor.

### QUrl QSimpleXmlNodeModel::baseUri ( const QXmlNodeModelIndex & node ) const `[virtual]`

Returns the base URI for node. This is always the document URI.

Reimplemented from QAbstractXmlNodeModel.

See also documentUri().

### QXmlNodeModelIndex QSimpleXmlNodeModel::elementById ( const QXmlName & id ) const `[virtual]`

Always returns a default constructed QXmlNodeModelIndex instance, regardless of id.

This effectively means the model has no elements that have an id.

Reimplemented from QAbstractXmlNodeModel.

### QXmlNamePool & QSimpleXmlNodeModel::namePool () const

Returns the name pool associated with this model. The implementation of name() will use this name pool to create names.

### QVector<QXmlName> QSimpleXmlNodeModel::namespaceBindings ( const QXmlNodeModelIndex & node ) const `[virtual]`

Always returns an empty QVector. This signals that no namespace bindings are in scope for node.

Reimplemented from QAbstractXmlNodeModel.

### QVector<QXmlNodeModelIndex> QSimpleXmlNodeModel::nodesByIdref ( const QXmlName & idref ) const `[virtual]`

Always returns an empty vector, regardless of idref.

This effectively means the model has no elements or attributes of type `IDREF`.

Reimplemented from QAbstractXmlNodeModel.

### QString QSimpleXmlNodeModel::stringValue ( const QXmlNodeModelIndex & node ) const `[virtual]`

If node is an element or attribute, typedValue() is called, and the return value converted to a string, as per XQuery's rules.

If node is another type of node, the empty string is returned.

If this function is overriden for comments or processing instructions, it is important to remember to call it (for elements and attributes having values not of type `xs:string`) to ensure that the values are formatted according to XQuery.

Reimplemented from QAbstractXmlNodeModel.