Les opérations DOM peuvent provoquer certaines exceptions dans des circonstances exceptionnelles.
DOMException = Code_Exception
Une exception est lancée lorsqu'une opération est impossible à exécuter à cause de données perdues ou d'une instabilité de l'implémentation ou encore si un argument de valeur nulle est passé.
Tous les langages ne supportent pas cette interface, mais par des méthodes spécifiques retournent des codes d'exception similaires à ceux renvoyés par l'interface DOMException. Microsoft utilise l'objet IXMLDOMParseError.
Les Codes d'exception| Constante | Valeur |
|---|---|
| Description | |
| INDEX_SIZE_ERR | 1 |
| est lancé si un index ou une taille est négative ou plus grande que la valeur permise. | |
| DOMSTRING_SIZE_ERR | 2 |
| est lancé si l'intervalle de texte ne convient pas au type des chaînes de caractères DOM, soit une séquence d'unité de 16 bits. | |
| HIERARCHY_REQUEST_ERR | 3 |
| est lancé si n'importe quel noeud est inséré quelque part où il ne convient pas. | |
| WRONG_DOCUMENT_ERR | 4 |
| est lancé si un noeud est utilisé dans un document différent de celui qui le crée. | |
| INVALID_CHARACTER_ERR | 5 |
| est lancé si un caractère illégal ou invalide est spécifié notamment dans un nom. | |
| NO_DATA_ALLOWED_ERR | 6 |
| est lancé si les données sont spécifiées pour un noeud qui ne supporte par de données. | |
| NO_MODIFICATION_ALLOWED_ERR | 7 |
| est lancé si une tentative est faite pour modifier un objet où les modifications nes sont pas permises. | |
| NOT_FOUND_ERR | 8 |
| est lancé si une tentative est faite pour référencer un noeud dans un contexte où il n'existe pas. | |
| NOT_SUPPORTED_ERR | 9 |
| est lancé si l'implémentation ne supporte pas le type requis de l'objet ou de l'opération. | |
| INUSE_ATTRIBUTE_ERR | 10 |
| est lancé si une tentative est faite pour ajouter un attribut qui est déjà utilisé quelque part. | |
| INVALID_STATE_ERR | 11 |
| est lancé si une tentative est faite pour utiliser un objet qui n'est pas utilisable. | |
| SYNTAX_ERR | 12 |
| est lancé si une chaîne de caractères illégale ou invalide est spécifiée. | |
| INVALID_MODIFICATION_ERR | 13 |
| est lancé si une tentative est faite pour modifier le type de l'objet sous-jacent. | |
| NAMESPACE_ERR | 14 |
| est lancé si une tentative est faite pour créer ou modifier un objet d'une manière incorrecte par rapport aux espaces de noms. | |
| INVALID_ACCESS_ERR | 15 |
| est lancé si un paramètre ou une opération n'est pas supporté par l'objet sous-jacent. | |