attribute is


Return type:
Returns true if the attribute is of the type specified, and false otherwise. Replacing is with isnt reverses the result.
attribute attribute-name (of element-expression)? (is | isnt) (cdata | name | names | number | numbers 
                                                               | nmtoken | nmtokens | nutoken | nutokens
                                                               | id | idref | idrefs 
                                                               | notation | entity | entities | group)


You can use the attribute is test to determine whether an attribute is of a specified type. For example, the following code will succeed if attribute foo is of type name, and will fail otherwise:

  attribute "foo" is name

Attribute type tests can be combined by joining the types with | and parenthesizing them. Note that for a data attribute, a test of its type for id, idref, idrefs, notation, entity, or entities will always fail because those types of attributes cannot be associated with a notation.

Entity and notation attribute tests can be applied directly to attribute values which are declared as entity or notation, or directly to an item of an attribute declared as entities.