| # XMLmind XML Editor - Online Help |

## 1. Validity state

Clicking on this button displays Validity tool, unless no validity errors are found in current document, in which case an OK message is displayed in the status bar.

This button is disabled if current document is not constrained by a grammar.

### Tip

Current document validity is automatically checked each time the document is saved, therefore, unless you are fixing an invalid document, you don't really need to explicitly use this button.

The icon contained in this button shows the validity state of current document:

Icon | Meaning
--- | ---
| The document is valid and has no semantic errors.
| The document is valid but has semantic warnings. This happens when the document being edited is itself a W3C XML Schema or a RELAX NG schema or when a user-defined `validateHook` reports such warnings (See Section 32, “validateHook” in XMLmind XML Editor - Configuration and Deployment).
| The document is valid but has semantic errors. This happens when the document being edited is itself a W3C XML Schema or a RELAX NG schema or when a user-defined `validateHook` reports such errors (See Section 32, “validateHook” in XMLmind XML Editor - Configuration and Deployment).
| The document has minor validity errors such as bad cross-references. ### Tip Working on a document which has bad cross-references is very common so you should not be alarmed by this situation.
| The document has validity errors signaling bad values for attributes or for elements. ### Note With a DTD, this can only happen for attribute values because the text contained in an element cannot be constrained by this type of grammar.
| This document has severe validity errors such an invalid child sequence inside an element. It is not a good idea to keep working on a document with such severe validity errors because XXE has not been designed to be convenient to use in such situation. ### Tip After fixing some structure errors using XXE, save and then reload the document. This will automatically discard superfluous white space which was not detected at first because of the validity errors. This trick is much faster that trying to remove invalid white space text nodes by hand.