XML schemas are quite hard to read, certainly when multiple name-spaces are involved. The template()
function in XML::Compile::Schema function can help displaying the expected structure of a message; this
module is a wrapper around that function.
Options
You can either specify an XML message filename and one or more schema filenames as arguments, or use the
options.
--xml|-x filename
The file which contains the xml message. A single dash means "stdin".
--schema|-s filename(s)
This option can be repeated, or the filenames separated by comma's, if you have more than one schema
file to parse. All imported and included schema components have to be provided explicitly.
--type|-t TYPE
The type of the root element, required if the XML is not namespaceo qualified, although the schema
is. If not specified, the root element is automatically inspected.
The TYPE notation is "{namespace}localname". Be warned to use quoting on the UNIX command-line,
because curly braces have a special meaning for the shell.
--output|-o filename
By default, the output is to stdout.
--show STRING
A comma separated list of comment components which should be included, by default "ALL". An empty
string or "NONE" will exclude all comments. The STRING can also be a comma separated combination of
"struct", "type", "occur", and "facets".