Skip to content

c00134744/pyang

 
 

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.

Releases

No releases published

Packages

No packages published

Languages

  • Python 73.6%
  • XSLT 23.9%
  • Makefile 1.4%
  • Shell 1.1%