SUR CETTE PAGE
Supprimer des éléments dans les données de configuration à l’aide du protocole Junos XML
Dans une session de protocole Junos XML avec un équipement exécutant Junos OS, pour supprimer des éléments de configuration (niveaux hiérarchiques ou objets de configuration) de la configuration du candidat ou de la base de données de configuration ouverte, une application cliente émet les éléments de balise de base décrits dans Création, modification ou suppression d’éléments de configuration à l’aide du protocole Junos XML. Lorsque vous utilisez des éléments de balise XML Junos pour représenter les éléments à supprimer, l’application cliente inclut l’attribut delete="delete"
dans la balise d’ouverture pour chaque élément. Lorsque vous utilisez un texte ASCII formaté, l’application cliente précède chaque élément pour être supprimé par l’opérateur delete:
. Lorsque vous utilisez des commandes en mode configuration pour supprimer des éléments, l’application cliente utilise la delete
commande et spécifie le chemin d’accès à l’élément. Lorsque vous utilisez des données JSON pour supprimer un élément, l’application cliente inclut l’attribut "operation" : "delete"
dans la liste d’attributs de cet élément. L’emplacement de l’attribut ou de l’opérateur dépend du type d’élément supprimé, comme décrit dans les sections suivantes :
Vous pouvez charger les données de configuration formatées à l’aide de JavaScript Object Notation (JSON) à partir de la version 16.1 de Junos OS.
Suppression d’un niveau hiérarchique ou d’un objet conteneur
Pour supprimer un niveau hiérarchique et tous ses enfants (ou un objet conteneur qui a des enfants mais aucun identifiant), une application cliente inclut les éléments de balise de base ou les déclarations de configuration de ses niveaux parents, comme décrit dans création, modification ou suppression d’éléments de configuration à l’aide du protocole XML Junos.
Lorsque vous utilisez des éléments de balise XML Junos, l’application inclut l’attribut delete="delete"
dans la balise vide qui représente le niveau ou l’objet conteneur :
<configuration> <!-- opening tag for each parent level --> <level-or-object delete="delete"/> <!-- closing tag for each parent level --> </configuration>
Lorsqu’elle utilise un texte ASCII formaté, l’application place l’instruction delete:
au-dessus du niveau à supprimer, qui est suivi d’un point-virgule (même si dans la configuration existante, il est suivi par des accolades qui renferment ses déclarations enfants) :
<configuration-text> /* statements for parent levels */ delete: object-or-level; /* closing braces for parent levels */ </configuration-text>
Lorsque vous utilisez des commandes en mode configuration, l’application spécifie la delete
commande et le chemin d’instruction au niveau hiérarchique ou à l’objet à supprimer.
<configuration-set> delete statement-path-to-level-or-object </configuration-set>
Lorsque vous utilisez des données de configuration JSON pour supprimer un niveau hiérarchique ou un objet conteneur, l’application inclut l’attribut "operation" : "delete"
dans la liste d’attributs de la hiérarchie ou de l’objet conteneur :
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "object-or-level" : { "@" : { "operation" : "delete" } } /* closing braces for parent levels */ } } </configuration-json>
L’exemple suivant montre comment supprimer le niveau hiérarchique de la [edit protocols ospf]
configuration du candidat à l’aide des éléments de balise Junos XML :

L’exemple suivant montre comment supprimer le niveau hiérarchique de la [edit protocols ospf]
configuration du candidat à l’aide des données de configuration formatées en JSON :
<rpc> <load-configuration format="json"> <configuration-json> { "configuration" : { "protocols" : { "ospf" : { "@" : { "operation" : "delete" } } } } } </configuration-json> </load-configuration> </rpc>
Suppression d’un objet de configuration doté d’un identifiant
Pour supprimer un objet de configuration doté d’un identifiant, une application cliente inclut les éléments de balise de base ou les déclarations de configuration de ses niveaux parent, comme décrit dans Création, modification ou suppression d’éléments de configuration à l’aide du protocole Junos XML.
Lorsque vous utilisez des éléments de balise XML Junos, l’application inclut l’attribut delete="delete"
dans la balise d’ouverture de l’objet. Dans l’élément de balise conteneur de l’objet, il contient uniquement l’élément de balise d’identification, et non les éléments de balise qui représentent d’autres caractéristiques de l’objet. Dans ce qui suit, l’élément de balise d’identification s’appelle <name>
:
<configuration> <!-- opening tag for each parent of the object --> <object delete="delete"> <name>identifier</name> </object> <!-- closing tag for each parent of the object --> </configuration>
L’attribut delete
apparaît dans la balise de conteneur d’ouverture, et non dans l’élément de balise d’identification. La présence de l’élément de balise d’identification entraîne la suppression de l’objet spécifié, et non la suppression de l’ensemble du niveau hiérarchique représenté par l’élément de balise de conteneur.
Lorsqu’elle utilise un texte ASCII formaté, l’application place l’énoncé delete:
au-dessus de l’objet et de son identifiant :
<configuration-text> /* statements for parent levels of the object */ delete: object identifier; /* closing braces for parent levels of the object */ </configuration-text>
Lors de l’utilisation des commandes du mode de configuration, l’application spécifie la delete
commande, le chemin d’instruction vers l’objet, ainsi que l’objet et son identifiant.
<configuration-set> delete statement-path-to-object object identifier </configuration-set>
Lorsque vous utilisez des données de configuration JSON, l’application inclut l’attribut "operation" : "delete"
dans la liste d’attributs de l’objet. Dans l’objet conteneur, il ne contient que la paire nom/valeur représentant l’identifiant. Dans l’exemple suivant, le membre JSON qui spécifie l’identifiant de l’élément a le nom de champ « name » :
<configuration-json> { "configuration" : { /* JSON objects for parent levels of the object */ "object" : [ { "@" : { "operation" : "delete" }, "name" : "identifier" } ] /* closing braces for parent levels of the object */ } } </configuration-json>
L’exemple suivant utilise des éléments de balise XML Junos pour supprimer l’objet barbara
utilisateur du [edit system login user]
niveau hiérarchique dans la configuration du candidat.

L’exemple suivant utilise des données de configuration au format JSON pour supprimer l’objet barbara
utilisateur du [edit system login user]
niveau hiérarchique de la configuration du candidat.
<rpc> <load-configuration format="json"> <configuration-json> { "configuration" : { "system" : { "login" : { "user" : [ { "@" : { "operation" : "delete" }, "name" : "barbara" } ] } } } } </configuration-json> </load-configuration> </rpc>
Suppression d’une option à valeur unique ou de forme fixe d’un objet de configuration
Pour supprimer d’un objet de configuration une option de forme fixe ou une option qui ne prend qu’une seule valeur, une application cliente inclut les éléments de balise de base ou les déclarations de configuration de ses niveaux parent, comme décrit dans création, modification ou suppression d’éléments de configuration à l’aide du protocole JUNOs XML. (Pour plus d’informations sur la suppression d’une option pouvant prendre plusieurs valeurs, voir Suppression de valeurs d’une option multi-valeurs d’un objet de configuration.)
Lorsque vous utilisez des éléments de balise XML Junos, l’application inclut l’attribut delete="delete"
dans la balise vide pour chaque option. Il n’inclut pas d’éléments de balise pour les enfants qui doivent rester dans la configuration. Dans ce qui suit, l’élément de balise d’identification de l’objet s’appelle <name>
:
<configuration> <!-- opening tag for each parent of the object --> <object> <name>identifier</name> <!-- if object has an identifier --> <option1 delete="delete"/> <option2 delete="delete"/> <!-- tag elements for other options to delete --> </object> <!-- closing tag for each parent of the object --> </configuration>
Lorsqu’elle utilise un texte ASCII formaté, l’application place l’énoncé delete:
au-dessus de chaque option :
<configuration-text> /* statements for parent levels of the object */ object identifier; delete: option1; delete: option2; /* closing braces for parent levels of the object */ </configuration-text>
Lorsque vous utilisez des commandes de mode de configuration, l’application spécifie la delete
commande, le chemin d’instruction vers l’option et l’option à supprimer. Vous pouvez spécifier le chemin complet vers l’instruction d’option ou accéder au niveau hiérarchique de l’objet et supprimer l’instruction d’option de cet emplacement. Utilisez une commande distincte pour supprimer chaque option.
<configuration-set> delete statement-path-to-object object identifier option1 delete statement-path-to-object object identifier option2 </configuration-set> <configuration-set> edit statement-path-to-object object identifier delete option1 delete option2 </configuration-set>
Lorsque vous utilisez des données de configuration JSON pour supprimer une option, l’application inclut l’attribut "operation" : "delete"
dans la liste d’attributs de cette option. Pour supprimer des options pour un niveau hiérarchique ou un objet conteneur, spécifiez les options à supprimer à ce niveau.
<configuration-json> { "configuration" : { /* JSON objects for parent levels */ "level-or-object" : { "@option1" : { "operation" : "delete" }, "@option2" : { "operation" : "delete" } } /* closing braces for parent levels */ } } </configuration-json>
Pour supprimer des options pour un objet doté d’un identifiant, incluez d’abord l’identifiant, puis spécifiez les options à supprimer. Dans l’exemple suivant, le membre JSON qui spécifie l’identifiant de l’élément a le nom de champ « name » :
<configuration-json> { "configuration" : { /* JSON objects for parent levels of the object */ "object" : [ { "name" : "identifier", "@option1" : { "operation" : "delete" }, "@option2" : { "operation" : "delete" } } ] /* closing braces for parent levels of the object */ } } </configuration-json>
L’exemple suivant montre comment supprimer l’option de formulaire disable
fixe au niveau de la hiérarchie à l’aide [edit forwarding-options sampling]
d’éléments de balise XML Junos.

Suppression de valeurs d’une option multi-valeur d’un objet de configuration
Comme décrit dans la section Mappage des déclarations de configuration aux éléments de balise XML Junos, certains objets de configuration Junos OS sont des déclarations de branche qui ont plusieurs valeurs. Dans la représentation ASCII cli formatée, les valeurs sont placées entre crochets en suivant le nom de l’objet :
object [value1 value2 value3 ...];
La représentation XML de Junos n’utilise pas de balise parente pour l’objet, mais utilise une instance distincte de l’élément de balise d’objet pour chaque valeur. Dans ce qui suit, l’élément de balise d’identification s’appelle <name>
:
<parent-object> <name>identifier</name> <object>value1</object> <object>value2</object> <object>value3</object> </parent-object>
Pour supprimer une ou plusieurs valeurs d’un tel objet, une application cliente inclut les éléments de balise de base ou les déclarations de configuration de ses niveaux parent, comme décrit dans La section Création, modification ou suppression d’éléments de configuration à l’aide du protocole Junos XML. Lorsque vous utilisez des éléments de balise XML Junos, l’application inclut l’attribut delete="delete"
dans la balise d’ouverture pour chaque valeur. Il n’inclut pas d’éléments de balise qui représentent les valeurs à conserver. Dans ce qui suit, l’élément de balise d’identification de l’objet parent est appelé <name>
:
<configuration> <!-- opening tag for each parent of the parent object --> <parent-object> <name>identifier</name> <object delete="delete">value1</object> <object delete="delete">value2</object> </parent-object> <!-- closing tag for each parent of the parent object --> </configuration>
Lorsqu’elle utilise un texte ASCII formaté, l’application répète l’instruction parente pour chaque valeur et place l’instruction delete:
au-dessus de chaque déclaration associée et de chaque valeur :
<configuration-text> /* statements for parent levels of the parent object */ parent-object identifier; delete: object value1; delete: object value2; /* closing braces for parent levels of the parent object */ </configuration-text>
Lorsque vous utilisez des commandes en mode configuration, l’application spécifie la delete
commande, le chemin d’instruction à chaque valeur et la valeur à supprimer. Vous pouvez spécifier le chemin complet vers la valeur ou accéder à la hiérarchie de l’objet et supprimer la valeur de cet emplacement. Utilisez une commande distincte pour supprimer chaque valeur.
<configuration-set> delete statement-path-to-parent-object parent-object identifier object value1 delete statement-path-to-parent-object parent-object identifier object value2 </configuration-set> <configuration-set> edit statement-path-to-parent-object parent-object identifier object delete value1 delete value2 </configuration-set>
La représentation JSON d’un objet avec une option multi-valeur est une paire nom/valeur où le nom du champ est le nom de l’objet et sa valeur, qui représente les options, est un tableau de chaînes. Junos OS ne prend pas en charge l’utilisation de JSON pour supprimer des valeurs uniques d’un objet avec une option multi-valeur. Pour mettre à jour la liste d’options, vous devez supprimer l’objet existant, puis configurer un nouvel objet avec l’ensemble de valeurs souhaité.
L’exemple suivant montre comment supprimer deux des autorisations accordées à la classe de connexion à l’aide user-accounts
d’éléments de balise XML Junos.
