| .\" Manpage for yanglint. |
| .\" Process this file with |
| .\" groff -man -Tascii yanglint.1 |
| .\" |
| |
| .TH YANGLINT 1 "2016-10-27" "libyang" |
| .SH NAME |
| yanglint \- YANG lint tool |
| . |
| .SH SYNOPSIS |
| .B yanglint |
| .br |
| .B yanglint |
| [\fIOPTIONS\fP] |
| [\-f { \fByang\fP | \fByin\fP | \fBtree\fP } ] |
| .I FILE ... |
| .br |
| .B yanglint |
| [\fIOPTIONS\fP] |
| [\-f { \fBxml\fP | \fBjson\fP } ] |
| \fISCHEMA\fP... |
| \fIFILE\fP... |
| . |
| .SH DESCRIPTION |
| \fByanglint\fP is a command-line tool for validating and converting YANG |
| schemas and the YANG modeled data. For a simple use, it validates the provided |
| file and if the output format specified, it converts input data into the output |
| format. If started with no argument, \fByanglint\fP opens interactive |
| environment where the user is allowed to work with schemas and data in a more |
| complex way. |
| . |
| .SH OPTIONS |
| .TP |
| .BR "\-h\fR,\fP \-\^\-help" |
| Outputs usage help and exits. |
| .TP |
| .BR "\-v\fR,\fP \-\^\-version" |
| Outputs the version number and exits. |
| .TP |
| .BR "\-V\fR,\fP \-\^\-verbose" |
| Increases the verbosity level. If not specified, only errors are printed, with |
| each appearance it adds: warnings, verbose messages, debug messages (if compiled |
| with debug information). |
| .TP |
| .BR "\-p \fIPATH\fP\fR,\fP \-\^\-path=\fIPATH\fP" |
| Specifies search path for getting imported modules or included submodules. The option |
| can be used multiple times. The current working directory and path of the module |
| being added is used implicitly. |
| .TP |
| .BR "\-s\fR,\fP \-\^\-strict" |
| Changes handling of unknown data nodes - instead of silently ignoring unknown data, |
| error is printed and data parsing fails. This option applies only on data parsing. |
| .TP |
| .BR "\-f \fIFORMAT\fP\fR,\fP \-\^\-format=\fIFORMAT\fP" |
| Converts the content of the input \fIFILE\fPs into the specified \fIFORMAT\fP. If no |
| \fIOUTFILE\fP is specified, the data are printed on the standard output. Only the |
| compatible formats for the input \fIFILE\fPs are allowed, see the section \fBFORMATS\fP. |
| .TP |
| .BR "\-o \fIOUTFILE\fP\fR,\fP \-\^\-output=\fIOUTFILE\fP" |
| Writes the output data into the specified \fIOUTFILE\fP. The option can be used |
| only in combination with \fB--format\fR option. In case of converting schema, only |
| a single input schema \fIFILE\fP is allowed. In case of data input \fIFILE\fPs, |
| input is merged and printed into a single \fIOUTFILE\fP. |
| .TP |
| .BR "\-F \fIFEATURES\fP\fR,\fP \-\^\-features=\fIFEATURES\fP" |
| Specifies the list of enabled features in the format |
| \fIMODULE\fP:[\fIFEATURE\fP,...]. In case of processing multiple modules, the |
| option can be used repeatedly. To disable all the features, use an empty list |
| specified for the particular module. |
| .TP |
| .BR "\-d \fIMODE\fP\fR,\fP \-\^\-default=\fIMODE\fP" |
| Print data with default values, according to the \fIMODE\fP (to print attributes, |
| the ietf-netconf-with-defaults model must be loaded). The \fIMODE\fP is one of the following: |
| \[bu] \fBall\fP - add missing default nodes |
| \[bu] \fBall-tagged\fP - add missing default nodes and mark all the default nodes with the attribute |
| \[bu] \fBtrim\fP - remove all nodes with a default value |
| \[bu] \fBimplicit-tagged\fP - add missing nodes and mark them with the attribute |
| .TP |
| .BR "\-t \fITYPE\fP\fR,\fP \-\^\-type=\fITYPE\fP" |
| Specify data tree type in the input data \fIFILE\fPs. The \fITYPE\fP is one of the following: |
| \[bu] \fBauto\fP - Resolve data type (one of the following) automatically (as pyang does). Applicable only on XML input data. |
| \[bu] \fBdata\fP - Complete datastore with status data (default type). |
| \[bu] \fBconfig\fP - Configuration datastore (without status data). |
| \[bu] \fBget\fP - Result of the NETCONF <get> operation. |
| \[bu] \fBgetconfig\fP - Result of the NETCONF <get-config> operation. |
| \[bu] \fBedit\fP - Content of the NETCONF <edit-config> operation. |
| \[bu] \fBrpc\fP - Content of the NETCONF <rpc> message, defined as YANG's rpc input statement. |
| \[bu] \fBrpcreply\fP - Reply to the RPC. This is just a virtual \fITYPE\fP, for parsing replies, '\fBauto\fP' must be used since the data \fIFILE\fPs are expected in pairs. |
| .br |
| The first input data \fIFILE\fP is expected as '\fBrpc\fP' \fITYPE\fP, the second \fIFILE\fP is expected as reply to the previous RPC. |
| \[bu] \fBnotif\fP - Notification instance (content of the <notification> element without <eventTime>. |
| .TP |
| .BR "\-O \fIFILE\fP\fR,\fP \-\^\-operational=\fIFILE\fP] |
| Optional parameter for '\fBrpc\fP' and '\fBnotif\fP' \fITYPE\fPs, the \fIFILE\fP contains running configuration datastore and |
| state data referenced from the RPC/Notification. The same data apply to all input data \fIFILE\fPs. Note that the file |
| is validated as '\fBdata\fP' \fITYPE\fP. Special value '\fB!\fP' can be used as \fIFILE\fP argument to ignore the external references. |
| .TP |
| .BR "\-y \fIYANGLIB_PATH\fP" |
| Specify path to a yang-library data file (XML or JSON) describing the initial context. |
| If provided, yanglint loads the modules according to the content of the yang-library data tree. |
| Otherwise, an empty content with only the internal libyang modules is used. This does |
| not limit user to load another modules explicitly specified as command line parameters. |
| . |
| .SH FORMATS |
| There are two types of formats to use. |
| .TP |
| .I Schemas |
| In case of schemas, the content can be converted into the '\fByang\fP', '\fByin\fP' |
| and '\fBtree\fP' formats. As input, only YANG and YIN files are |
| accepted. Note, that the corresponding file extension is required. |
| .TP |
| .I Data\ \ \ |
| In case of YANG modeled data, the content can be converted between '\fBxml\fP' |
| and '\fBjson\fP' formats. Remember that the corresponding file extension of the |
| input file is required. |
| . |
| |
| .SH EXAMPLES |
| .IP \[bu] 2 |
| Open interactive environment: |
| yanglint |
| .IP \[bu] |
| Convert YANG model into YIN and print it to the stdout: |
| yanglint --format=yin ./ietf-system.yang |
| .IP \[bu] |
| Convert ietf-system configuration data from XML to JSON: |
| yanglint --format=json --type=config --output=data.json ./ietf-system.yang ./data.xml |
| |
| .SH SEE ALSO |
| https://github.com/CESNET/libyang (libyang homepage and Git repository) |
| . |
| .SH AUTHORS |
| Radek Krejci <rkrejci@cesnet.cz>, Michal Vasko <mvasko@cesnet.cz> |
| . |
| .SH COPYRIGHT |
| Copyright \(co 2015-2017 CESNET, a.l.e. |