-
Notifications
You must be signed in to change notification settings - Fork 346
An extensible YANG validator and converter in python
License
mbj4668/pyang
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Install ------- In this directory run: python setup.py install (this might require root access) To install in a different location, run: python setup.py install --prefix=/usr/local If you do this, it is recommended to set the environment variable YANG_INSTALL to the prefix directory. This ensures that pyang will find standard YANG modules. Run locally without installing ------------------------------ export PATH=`pwd`/bin:$PATH export MANPATH=`pwd`/man:$MANPATH export PYTHONPATH=`pwd`:$PYTHONPATH export YANG_MODPATH=`pwd`/modules:$YANG_MODPATH export PYANG_XSLT_DIR=`pwd`/xslt export PYANG_RNG_LIBDIR=`pwd`/schema or: source ./env.sh Usage ----- pyang -h man pyang Code structure -------------- bin/pyang The executable script documented in pyang(1). pyang/ Contains the pyang library code. pyang/__init__.py Initalization code for the pyang library. Defines the Context and Repository clasess. pyang/syntax.py Generic syntax checking for YANG and YIN statements. Defines regular expressions for argument checking of core statements. pyang/grammar.py Generic grammar for YANG and YIN. Defines chk_module_statements() which validates a parse tree according to the grammar. pyang/statements.py Defines the generic Statement class and all validation code. pyang/yang_parser.py YANG tokenizer and parser. pyang/yin_parser.py YIN parser. Uses the expat library for XML parsing. pyang/types.py Contains code for checking built-in types. pyang/plugin.py Plugin API. Defines the class PyangPlugin which all plugins inherits from. All output handlers are written as plugins. pyang/plugins/ Directory where plugins can be installed. All plugins in this directory are automatically initialized when the library is initialized. pyang/translators/ Contains output plugins for YANG, YIN, XSD, and DSDL translation. pyang/xslt Contains XSLT stylesheets for generating RELAX NG, Schematron and DSRL schemas and validating instance documents. Also included is the free implementation of ISO Schematron by Rick Jelliffe from http://www.schematron.com/ (files iso_schematron_skeleton_for_xslt1.xsl, iso_abstract_expand.xsl and iso_svrl_for_xslt1.xsl). pyang/schema Contains RELAX NG schema for YIN and RELAX NG library of common NETCONF elements which is included by the generated RELAX NG schemas.
About
An extensible YANG validator and converter in python
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published