RELAX NG Compact to regular syntax conversion library

pip install rnc2rng==2.6.1


RELAX NG Compact to RELAX NG conversion library

Converts RELAX NG schemata in Compact syntax (rnc) to the equivalent schema in the XML-based default RELAX NG syntax. Dependencies:

  • Python 2.x (tested with 2.6, 2.7)
  • Python 3.x (tested with 3.3, 3.4, 3.5)
  • rply

Feedback welcome on GitHub.


rnc2rng was originally written by David Mertz in 2003 and published as part of a collection of files around RELAX NG on his site into the Public Domain. Hartmut Goebel published it as a package on PyPI to make it easier to access. It was mirrored on GitHub by Dustin J. Mitchell in 2010 after he fixed some bugs. Timmy Zhu forked his repository and contributed further enhancements. Recently, I (Dirkjan Ochtman) was interested in playing with RELAX NG Compact and started making further updates. I asked Hartmut for maintainership on PyPI and received it. While I cannot promise many updates, I should be responsive to bug reports and (especially!) pull requests.

How to install

The usual should work:

$ sudo pip install .

Getting started

$ python -m rnc2rng test.rnc > test.rng


All of the code is released into the Public Domain.