Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QDomAttr Class Reference
[XML module]

The QDomAttr class represents one attribute of a QDomElement. More...

All the functions in this class are reentrant when Qt is built with thread support.

`#include <qdom.h>`

Inherits QDomNode.

List of all member functions.

## Public Members

- QDomAttr ()
- QDomAttr ( const QDomAttr & x )
- QDomAttr & operator= ( const QDomAttr & x )
- ~QDomAttr ()
- virtual QString name () const
- virtual bool specified () const
- virtual QDomElement ownerElement () const
- virtual QString value () const
- virtual void setValue ( const QString & v )
- virtual QDomNode::NodeType nodeType () const
- virtual bool isAttr () const

## Detailed Description

The QDomAttr class represents one attribute of a QDomElement.

For example, the following piece of XML produces an element with no children, but two attributes:

        <link href="http://www.trolltech.com" color="red" />

You can access the attributes of an element with code like this:

        QDomElement e = //...
        //...
        QDomAttr a = e.attributeNode( "href" );
        cout << a.value() << endl;                // prints "http://www.trolltech.com"
        a.setValue( "http://doc.trolltech.com" ); // change the node's attribute
        QDomAttr a2 = e.attributeNode( "href" );
        cout << a2.value() << endl;               // prints "http://doc.trolltech.com"

This example also shows that changing an attribute received from an element changes the attribute of the element. If you do not want to change the value of the element's attribute you must use cloneNode() to get an independent copy of the attribute.

QDomAttr can return the name() and value() of an attribute. An attribute's value is set with setValue(). If specified() returns TRUE the value was either set in the document or set with setValue(); otherwise the value hasn't been set. The node this attribute is attached to (if any) is returned by ownerElement().

For further information about the Document Object Model see http://www.w3.org/TR/REC-DOM-Level-1/ and http://www.w3.org/TR/DOM-Level-2-Core/. For a more general introduction of the DOM implementation see the QDomDocument documentation.

See also XML.

## Member Function Documentation

### QDomAttr::QDomAttr ()

Constructs an empty attribute.

### QDomAttr::QDomAttr ( const QDomAttr & x )

Constructs a copy of x.

The data of the copy is shared (shallow copy): modifying one node will also change the other. If you want to make a deep copy, use cloneNode().

### QDomAttr::~QDomAttr ()

Destroys the object and frees its resources.

### bool QDomAttr::isAttr () const`[virtual]`

Returns TRUE.

Reimplemented from QDomNode.

### QString QDomAttr::name () const`[virtual]`

Returns the attribute's name.

### QDomNode::NodeType QDomAttr::nodeType () const`[virtual]`

Returns AttributeNode.

Reimplemented from QDomNode.

### QDomAttr & QDomAttr::operator= ( const QDomAttr & x )

Assigns x to this DOM attribute.

The data of the copy is shared (shallow copy): modifying one node will also change the other. If you want to make a deep copy, use cloneNode().

### QDomElement QDomAttr::ownerElement () const`[virtual]`

Returns the element node this attribute is attached to or a null node if this attribute is not attached to any element.

### void QDomAttr::setValue ( const QString & v )`[virtual]`

Sets the attribute's value to v.

See also value().

### bool QDomAttr::specified () const`[virtual]`

Returns TRUE if the attribute has either been expicitly specified in the XML document or was set by the user with setValue(). Returns FALSE if the value hasn't been specified or set.

See also setValue().

### QString QDomAttr::value () const`[virtual]`

Returns the value of the attribute or QString::null if the attribute has not been specified.

See also specified() and setValue().

This file is part of the Qt toolkit. Copyright © 1995-2005 Trolltech. All Rights Reserved.