Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

xsl:template match="/" Template

Syntaxe

Descriptif

Le <xsl:template match="/"> modèle est un modèle sans nom dans le fichier junos.xsl qui vous permet d’utiliser des expressions XPath raccourcies dans les scripts de validation. Vous devez importer le fichier junos.xsl pour utiliser ce modèle. Cependant, comme ce modèle n’est pas dans l’espace jcs de noms, vous n’avez pas besoin de mapper à l’espace jcs de noms dans votre déclaration de feuille de style pour utiliser ce modèle.

Junos OS fournit une entrée au format XML à un script. L’entrée du script de validation consiste en une représentation XML du fichier de configuration candidat post-héritage. Lorsque vous exécutez un script, le processus de gestion des Junos OS (mgd) génère un document de sortie au format XML comme produit de son évaluation du document d’entrée, comme illustré à la figure 1.

Figure 1 : Entrée et sortie Process flow diagram showing XML input transformed into XML output using XSL script within JUNOS management daemon mgd. du script de validation

En général, un moteur XSLT utilise la récursivité pour évaluer l’intégralité du document d’entrée. Toutefois, l’instruction <xsl:apply-templates> vous permet de limiter la portée de l’évaluation afin que le processus de gestion (le moteur XSLT de Junos OS) ne doive évaluer qu’un sous-ensemble du document d’entrée.

Le <xsl:template match="/"> modèle est un modèle sans nom qui utilise l’instruction <xsl:apply-templates> pour spécifier le contenu de l’élément du document d’entrée <configuration> comme seul nœud à évaluer lors de la génération du document de sortie.

Le <xsl:template match="/"> modèle contient les balises suivantes :

La ligne 1 correspond au nœud racine du document d’entrée. Lorsque le processus de gestion voit le nœud racine du document d’entrée, ce modèle est appliqué.

La ligne 2 désigne la balise racine de niveau supérieur du document de sortie. Ainsi, la ligne 2 spécifie que l’évaluation du document d’entrée aboutit à un document de sortie dont la balise de premier niveau est <commit-script-results>.

La ligne 3 limite la portée de l’évaluation du document d’entrée au contenu de l’élément <configuration> , qui est un enfant de l’élément <commit-script-input> .

Les lignes 4 et 5 sont des balises fermantes.

Vous n’avez pas besoin d’inclure explicitement le <xsl:template match="/"> modèle dans vos scripts car ce modèle est inclus dans le fichier d’importation junos.xsl.

Lorsque le <xsl:template match="/"> modèle exécute l’instruction <xsl:apply-templates> , le script passe à un modèle qui correspond à la <configuration> balise. Ce modèle, <xsl:template match="configuration">, fait partie du script de commit standard que vous devez inclure dans tous vos scripts de commit :

Ainsi, le fichier d’importation junos.xsl contient un modèle qui pointe vers un modèle explicitement référencé dans votre script.

Exemples d’utilisation

L’exemple suivant contient l’instruction de <xsl:if> programmation et l’élément <xnm:warning> . Le résultat logique des deux modèles est le suivant :

Lorsque vous importez le fichier junos.xsl et que vous incluez explicitement la <xsl:template match="configuration"> balise dans votre script de validation, le contexte (dot) se déplace vers le <configuration> nœud. Cela vous permet d’écrire toutes les expressions XPath relatives à ce point. Cette technique vous permet de simplifier les expressions XPath que vous utilisez dans vos scripts de validation. Par exemple, au lieu d’écrire ceci, qui correspond à l’appareil avec le nom atlantad’hôte :

Vous pouvez écrire ceci :