|
|
The Attr
interface represents an attribute in an
Element
object. Typically the allowable values for
the attribute are defined in a document type definition.
Attr
objects inherit the Node
interface, but since they are not actually child nodes of the
element they describe, the DOM does not consider them part of the
document tree. Thus, the Node
attributes
parentNode
, previousSibling
, and
nextSibling
have a null value for Attr
objects. The DOM takes the view that attributes are properties of
elements rather than having a separate identity from the elements
they are associated with; this should make it more efficient to
implement such features as default attributes associated with all
elements of a given type. Furthermore, Attr
nodes
may not be immediate children of a DocumentFragment
. However, they can be associated with Element
nodes
contained within a DocumentFragment
. In short,
users and implementors of the DOM need to be aware that Attr
nodes have some things in common with other objects
inheriting the Node
interface, but they also are
quite distinct.
The attribute's effective value is determined as follows: if this
attribute has been explicitly assigned any value, that value is the
attribute's effective value; otherwise, if there is a declaration
for this attribute, and that declaration includes a default value,
then that default value is the attribute's effective value;
otherwise, the attribute does not exist on this element in the
structure model until it has been explicitly added. Note that the
nodeValue
attribute on the Attr
instance can also be used to retrieve the string version of the
attribute's value(s).
In XML, where the value of an attribute can contain entity
references, the child nodes of the Attr
node provide
a representation in which entity references are not expanded. These
child nodes may be either Text
or
EntityReference
nodes. Because the attribute type may be
unknown, there are no tokenized attribute values.
Attr ()
| Attr |
Attr (const Node &other)
| Attr |
Attr (const Attr &other)
| Attr |
Attr & operator = (const Node &other)
| operator = |
Reimplemented from Node.
Attr & operator = (const Attr &other)
| operator = |
Reimplemented from Node.
~Attr ()
| ~Attr |
DOMString name ()
| name |
[const]
Returns the name of this attribute.
bool specified ()
| specified |
[const]
If this attribute was explicitly given a value in the original
document, this is true
; otherwise, it is
false
. Note that the implementation is in charge of
this attribute, not the user. If the user changes the value of
the attribute (even if it ends up having the same value as the
default value) then the specified
flag is
automatically flipped to true
. To re-specify
the attribute as the default value from the DTD, the user must
delete the attribute. The implementation will then make a new
attribute available with specified
set to
false
and the default value (if one exists).
In summary: specified
is
true
, and the value is the assigned value.
specified
is false
, and the value is
the default value in the DTD.
DOMString value ()
| value |
[const]
On retrieval, the value of the attribute is returned as a string. Character and general entity references are replaced with their values.
On setting, this creates a Text
node with the
unparsed contents of the string.
void setValue ( const DOMString & )
| setValue |
see value
Element ownerElement ()
| ownerElement |
[const]
Introduced in DOM Level 2
The Element node this attribute is attached to or null if this attribute is not in use.
Attr ( AttrImpl *_impl )
| Attr |
[protected]
Generated by: dfaure on faure on Tue Apr 16 08:50:42 2002, using kdoc 2.0a53. |