SUR CETTE PAGE
Présentation du XSLT
Les scripts de validation, les scripts op, les scripts d’événements et les scripts SNMP peuvent être écrits dans XSLT (Extensible Stylesheet Language Transformations), qui est une norme pour le traitement des données XML (Extensible Markup Language ). XSLT est développé par le World Wide Web Consortium (W3C) et est accessible à http://www.w3c.org/TR/xslt .
Avantages du XSLT
XSLT correspond naturellement à Junos OS, avec ses fonctionnalités XML natives. XSLT effectue des transformations XML en XML, transformant une hiérarchie XML en une autre. Il offre un grand degré de liberté et de puissance dans la façon dont il transforme le XML d’entrée, ce qui permet d’apporter des modifications mineures à la hiérarchie existante (par exemple des ajouts ou des suppressions) jusqu’à la création d’une hiérarchie de documents complètement nouvelle.
Étant donné que XSLT a été créé pour permettre des transformations XML-XML génériques, il s’agit d’un choix naturel à la fois pour l’inspection de la syntaxe de configuration (que Junos OS peut facilement exprimer en XML) et pour générer des erreurs et des avertissements (que Junos OS communique en interne sous forme XML). XSLT comprend des mécanismes puissants permettant de trouver des instructions de configuration qui correspondent à des critères spécifiques. XSLT peut ensuite générer l’arbre de résultats XML approprié à partir de ces déclarations de configuration pour indiquer aux composants de l’interface utilisateur (UI) Junos OS d’effectuer le comportement souhaité.
Bien que XSLT offre une puissante capacité de script, son objectif est spécifique et limité. Il ne rend pas Junos OS vulnérable aux programmeurs arbitraires ou malveillants. XSLT empêche les programmeurs d’effectuer des opérations aléatoires, telles que l’ouverture de ports TCP (Transmission Control Protocol), le forcage de nombreux processus ou l’envoi d’e-mails. La seule action disponible dans XSLT est de générer du XML, et le XML est interprété par l’interface utilisateur en fonction de la sémantique fixe. Un script XSLT ne peut générer que des données XML, qui sont directement traitées par l’infrastructure de l’interface utilisateur pour n’autoriser que les fonctionnalités spécifiques répertoriées ci-dessus, ce qui génère des messages d’erreur, d’avertissement et de journalisation système, ainsi que des changements de configuration persistants et transitoires. Cela signifie que l’impact des scripts de validation, des scripts op, des scripts d’événements et des scripts SNMP sur l’équipement est bien défini et peut être visualisé à l’intérieur de l’interface de ligne de commande (CLI), à l’aide de commandes ajoutées à cette fin.
Moteur XSLT
XSLT est un langage permettant de transformer un document XML en un autre document XML. Le modèle de base est qu’un moteur XSLT (ou processeur) lit un script (ou une feuille de style) et un document XML. Le moteur XSLT utilise les instructions du script pour traiter le document XML en traversant la hiérarchie du document. Le script indique quelle partie de l’arbre doit être traversée, comment l’inspecter et quel XML doit être généré à chaque point. Pour les scripts de validation, les scripts op, les scripts d’événements et les scripts SNMP, le moteur XSLT est une fonction du processus de gestion Junos OS (mgd).
La figure 1 illustre la relation entre un script de validation XSLT et le moteur XSLT.
XSLT
XSLT Concepts
XSLT a sept concepts de base. Ces derniers sont résumés dans le tableau 1.
XSLT Concepts |
Description |
|---|---|
Xpath |
Syntaxe d’expression pour spécifier un nœud dans le document d’entrée |
Modèles |
Mécanisme de mappage des hiérarchies d’entrées aux instructions qui les gèrent |
Paramètres |
Mécanisme de transmission des arguments aux modèles |
Variables |
Mécanisme permettant de définir des références en lecture seule aux nœuds |
Instructions de programmation |
Mécanisme de définition de la logique dans XSLT |
Récursivité |
Mécanisme par lequel les modèles s’appellent pour faciliter la boucle |
Contexte (point) |
Nœud en cours d’inspection dans le document d’entrée |