XmlAttribute.Specified Property

Definition

Gets a value indicating whether the attribute value was explicitly set.

public:
 virtual property bool Specified { bool get(); };
public virtual bool Specified { get; }
member this.Specified : bool
Public Overridable ReadOnly Property Specified As Boolean

Property Value

true if this attribute was explicitly given a value in the original instance document; otherwise, false. A value of false indicates that the value of the attribute came from the DTD.

Remarks

The implementation is in charge of this property, not the user. If the user changes the value of the attribute (even if it ends up having the same value as the default/fixed value), then the specified flag is automatically flipped to true. To re-specify the attribute as the default/fixed value from the DTD, the user must delete the attribute. The implementation then makes a new attribute available with specified set to false and the default/fixed value (if one exists).

In summary:

  1. If the attribute has an assigned value in the document, Specified is true, and the value is the assigned value.

  2. If the attribute has no assigned value in the document and has a default/fixed value in the DTD, Specified is false, and the value is the default/fixed value in the DTD.

  3. Otherwise, the attribute does not appear in the structure model of the document.

Applies to