Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

SLAX – Überblick

Stylesheet Language Alternative syntaX (SLAX) ist eine Sprache zum Schreiben von Junos OS Commit-Skripten, Op-Skripten, Ereignisskripten und SNMP-Skripten. Es ist eine Alternative zu Extensible Stylesheet Language Transformations (XSLT). SLAX hat eine unterschiedliche Syntax ähnlich der von C und Perl, aber die gleiche Semantik wie XSLT.

VORTEILE VON SLAX

XSLT ist ein leistungsstarkes und effektives Tool für die Handhabung von Extensible Markup Language (XML), das sich gut für die Maschine-zu-Maschine-Kommunikation eignet, aber seine XML-basierte Syntax ist für die Entwicklung komplexer Programme ungelegen.

SLAX hat eine einfache Syntax, die dem Stil von C und PERL folgt. Es bietet eine praktische und prägnante Möglichkeit, Code zu coden, so dass Sie lesbare, wartungsfähige Commit-, Op-, Ereignis- und SNMP-Skripte erstellen können. SLAX entfernt XPath-Ausdrücke und Programmieranweisungen aus XML-Elementen. XML-Winkelklammern und Anführungszeichen werden durch Klammern und geschweifte Klammern ({ }) ersetzt, die die bekannten Trennzeichen von C und PERL sind.

Die Vorteile von SLAX sind besonders für Programmierer, die sich nicht bereits an XSLT gewöhnt haben, besonders stark, da sie sich mit SLAX auf die von XSLT eingeführten neuen Programmierthemen konzentrieren können, anstatt sich auf das Erlernen einer neuen Syntax zu konzentrieren. Mit SLAX können Sie beispielsweise:

  • Verwendung ifvon , else ifund else Anweisungen anstelle von <xsl:choose> <xsl:if> Elementen

  • Setzen Sie Testausdrücke in Klammern ( )

  • Verwenden Sie das Doppelte Gleichzeichen (==), um die Gleichheit zu testen, anstelle des Single Equal Sign () (=)

  • Verwenden Sie geschweifte Klammern, um die Eindämmung zu zeigen, anstatt Tags zu schließen

  • Führen Sie eine Verkettung mit dem Unterstrich (_) -Operator durch, wie in PERL, Version 6

  • Schreiben Sie Textzeichenfolgen mit einfachen Anführungszeichen (" ") anstelle des <xsl:text> Elements

  • Definieren von benannten Vorlagen mit einer Syntax, die einer Funktionsdefinition ähnelt

  • Rufen Sie benannte Vorlagen mit einer Syntax an, die einem Funktionsaufruf ähnelt

  • Simplifizieren von Namespace-Deklarationen

  • Reduzieren Sie die Unordnung in Ihren Skripten

  • Schreiben Sie besser lesbare Skripte

Funktionsweise von SLAX

SLAX fungiert als Präprozessor für XSLT. Junos OS übersetzt intern SLAX-Programmieranweisungen (z if . B. und else Anweisungen) in die entsprechenden XSLT-Anweisungen (z <xsl:if> . B. und <xsl:choose> Elemente). Nach dieser Übersetzung wird die XSLT-Transformations-Engine aufgerufen, die für Junos OS der Junos OS-Managementprozess (mgd) ist.

SLAX hat keinen Einfluss auf die Aussagekraft von XSLT; es macht nur XSLT einfacher zu verwenden. Die zugrunde liegenden SLAX-Konstrukte sind vollständig nativ auf XSLT. SLAX fügt der XSLT-Engine nichts hinzu. Der SLAX-Parser analysiert ein Eingabedokument und erstellt eine XML-Struktur, die mit dem des XML-Parsers erzeugt wird, der ein XSLT-Dokument liest.

Abbildung 1 zeigt den Fluss der EIN- und Ausgabe von SLAX-Skripten.

Abbildung 1: Ein- und Ausgabe von SLAX-Skripten SLAX Script Input and Output

SLAX-Ressourcen

Tabelle 1 enthält zusätzliche Ressourcen, mit denen Sie SLAX lernen und SLAX-Skripte schreiben können.

Tabelle 1: SLAX-Ressourcen

Ressource

URL

SLAX Manuell

http://juniper.github.io/libslax/slax-manual.html

Junos Automation Reference für SLAX 1.0

https://www.juniper.net/documentation/en_US/day-one-books/archive/TW_Junos_Automation_Reference.pdf

Libslax – eine Open-Source-Implementierung der SLAX-Sprache

https://github.com/Juniper/libslax

https://github.com/Juniper/libslax/wiki