r48 - 2016-10-28 - 12:30:31 - MartinBjoerklundYou are here: TWiki >  Main Web > YangTools

Tools

Validators, compilers and translators

  • The latest version of libsmi contains a YANG output driver for the smidump tool. It generates YANG modules from SMI/SMIv2 MIBs.

  • pyang (manual page) is an extensible YANG validator written in Python. It can be used standalone as a validator of YANG modules, or to generate YIN, YANG, DSDL and XSD from YANG and YIN. It can also be integrated in other applications, which can, for example, generate vendor-specific stub code. Validation of instance XML documents (datastore contents or NETCONF PDUs) using pyang is explained in DSDLMappingTutorial and yang2dsdl manual page.

  • pyang can also be used to generate UML diagrams from YANG data models. See UML Output Example.

  • jYang is a YANG validator and translator written in Java.

  • pyangbind is a pyang plugin to generate Python class hierarchy from YANG module

  • goyang is a YANG parser and compiler for Go programs

YANG Editing tools

  • yang-mode is an emacs mode for editing YANG files. RFC 7950 and 6020 compliant. Requires cc-mode 5.30 or later.
    NOTE With emacs 23, you need to do (for details, see the comment in the file):
    • In .emacs, use autoload instead of require (autoload 'yang-mode "yang-mode" "Major mode for editing YANG models." t)
    • Possibly delete cc-mode.elc

  • yang.vim is a VIM syntax file for editing YANG files. RFC 6020 compliant.

  • YANG-IDE is a integrated development environment for YANG, using Eclipse.

  • n++yang.xml is a Notepad PLus syntax file for editing YANG files.

YANG and NETCONF clients and servers

Other tools

  • rfcstrip is a program that extracts YANG modules, MIB modules, and other marked code components from RFCs and Internet-Drafts.

  • xym is another tool to extract YANG models from RFCs.

  • RELAX NG schema for YIN
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r48 < r47 < r46 < r45 < r44 | More topic actions
 
YANG
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback