Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
이 페이지에서
 

XSLT 개요

커밋 스크립트, op 스크립트, 이벤트 스크립트 및 SNMP 스크립트는 확장형 스타일시트 언어 변환(XSLT)으로 작성할 수 있습니다. 이는 XML( Extensible Markup Language ) 데이터를 처리하는 표준입니다. XSLT는 W3C(World Wide Web Consortium)에서 개발되었으며 http://www.w3c.org/TR/xslt 액세스할 수 있습니다.

XSLT의 이점

XSLT는 기본 XML 기능을 갖춘 Junos OS 자연스러운 매치입니다. XSLT는 XML에서 XML로의 전환을 수행하여 하나의 XML 계층을 다른 계층으로 전환합니다. 입력 XML을 변환하는 방식으로 뛰어난 자유와 힘을 제공하므로 기존 계층(추가 또는 삭제 등)을 사소한 변경부터 완전히 새로운 문서 계층 구축에 이르기까지 모든 것을 할 수 있습니다.

XSLT는 일반적인 XML-to-XML 변환을 허용하도록 생성되었으므로 구성 구문 검사(XML에서 쉽게 표현할 수 Junos OS)와 오류 및 경고 생성(JUNOS OS XML로 내부적으로 통신)을 모두 선택하는 것이 자연스러운 선택입니다. XSLT에는 특정 기준과 일치하는 구성 문을 찾기 위한 강력한 메커니즘이 포함되어 있습니다. 그런 다음 XSLT는 이러한 구성 문에서 적절한 XML 결과 트리를 생성하여 Junos OS 사용자 인터페이스(UI) 구성 요소에 원하는 동작을 수행하도록 지시할 수 있습니다.

XSLT는 강력한 스크립팅 기능을 제공하지만 초점은 구체적이며 제한적입니다. 이는 Junos OS 임의적 또는 악의적인 프로그래머에 취약하게 만들지 않습니다. XSLT는 프로그래머가 TCP(Random Transmission Control Protocol) 포트 개방, 수많은 프로세스 파기 또는 이메일 전송과 같은 우연한 작업을 수행하지 못하도록 제한합니다. XSLT에서 사용할 수 있는 유일한 작업은 XML을 생성하는 것이며, XML은 고정 의미 체계에 따라 UI에 의해 해석됩니다. XSLT 스크립트는 UI 인프라에서 직접 처리되는 XML 데이터만 출력하여 위에 나열된 특정 기능만 허용하여 오류, 경고 및 시스템 로그 메시지, 지속적이고 일시적인 구성 변경을 생성할 수 있습니다. 즉, 커밋 스크립트, op 스크립트, 이벤트 스크립트 및 SNMP 스크립트가 디바이스에 미치는 영향은 잘 정의되어 있으며 해당 목적을 위해 추가된 명령을 사용하여 CLI(command-line interface) 내에서 볼 수 있습니다.

XSLT 엔진

XSLT는 하나의 XML 문서를 다른 XML 문서로 변환하기 위한 언어입니다. 기본 모델은 XSLT 엔진(또는 프로세서)이 스크립트(또는 스타일 시트)와 XML 문서를 읽는 것입니다. XSLT 엔진은 스크립트의 지침을 사용하여 문서의 계층을 통과하여 XML 문서를 처리합니다. 스크립트는 트리의 어떤 부분을 통과해야 하는지, 어떻게 검사해야 하는지, 각 지점에서 어떤 XML을 생성해야 하는지 나타냅니다. 커밋 스크립트, op 스크립트, 이벤트 스크립트 및 SNMP 스크립트의 경우 XSLT 엔진은 Junos OS 관리 프로세스(mgd)의 기능입니다.

그림 1 은 XSLT 커밋 스크립트와 XSLT 엔진 간의 관계를 보여줍니다.

그림 1: XSLT 엔진을 통한 XSLT 커밋 스크립트 플로우 Flow of XSLT Commit Script Through the XSLT Engine

XSLT 개념

XSLT에는 7가지 기본 개념이 있습니다. 표 1에 요약되어 있습니다.

표 1: XSLT 개념

XSLT 개념

설명

Xpath

입력 문서에서 노드를 지정하기 위한 표현식 구문

템플릿

입력 계층을 처리하는 지침에 매핑하는 메커니즘

매개 변수

인수를 템플릿에 전달하는 메커니즘

변수

노드에 대한 읽기 전용 참조를 정의하기 위한 메커니즘

프로그래밍 지침

XSLT에서 논리를 정의하기 위한 메커니즘

재귀

루프를 용이하게 하기 위해 템플릿을 스스로 부르는 메커니즘

컨텍스트(점)

현재 입력 문서에서 검사 중인 노드