Trang converts between different schema languages for XML. It
supports the following languages:

    * RELAX NG (XML syntax)
    * RELAX NG compact syntax
    * XML 1.0 DTDs
    * W3C XML Schema

A schema written in any of the supported schema languages can be
converted into any of the other supported schema languages, except
that W3C XML Schema is supported for output only, not for input.
Trang can also infer a schema from one or more example XML documents.

Trang is constructed around an RELAX NG object model designed to
support schema conversion. For each schema language supported for
input, there is an input module that can convert from the schema
language into this internal object model. Similarly, for each schema
language supported for output, there is an output module that can
convert from the internal object model in the schema language.

Trang aims to produce human-understandable schemas; it tries for
a translation that preserves all aspects of the input schema that
may be significant to a human reader, including the definitions,
the way the schema is divided into files, annotations and comments.

Homepage:
https://relaxng.org/jclark/
